【发布时间】:2019-10-03 04:11:29
【问题描述】:
我有一个数据集,它对列中的数值进行缩写。例如,12M 表示 1200 万,1.2k 表示 1200。 M 和 k 是唯一的缩写。如何编写允许 R 将这些值从最低到最高排序的代码?
我曾考虑使用 gsub 将 M 转换为 000,000 等,但这并未考虑小数(1.5M 将是 1.5000000)。
【问题讨论】:
-
如果它安装在您的系统和路径中,您可以从
system()调用numfmt。类似于system(paste("numfmt --from=auto --to=none", "12M"), intern = TRUE)。 -
相关先前讨论 - stackoverflow.com/questions/36806215/… 包括解决此问题的 cmets 中的答案。
-
另外,在您的情况下,我们似乎可以安全地假设尾数标准化(例如,
12.00k或0.012k未标准化) -
哦,您是否关心处理
NA、NaN、Inf而不会炸毁?
标签: r units-of-measurement exponent