【问题标题】:Convert from K to thousand (1000) in R在 R 中从 K 转换为千 (1000)
【发布时间】:2025-12-16 03:15:01
【问题描述】:

第一次发帖,请善待。我正在通过 R 学习我的方式,并想知道是否有一种从 k 转换为数千的快速方法。例如,如果我有 1.4k,它将转换为 1400,或者如果它是 14k,它将转换为 14000。我发现文章以另一种方式转换,但不是这样。非常感谢您的意见。切里奥,马里

【问题讨论】:

  • 需要更多信息来提供高质量的响应,例如向量中除了这两个值之外的其他内容。请阅读如何在help center 中提问。
  • 您好,它们只是一个数字向量,如果它们超过 1000,则用 k 表示。除了我所描述的之外,没有其他条件。下面回答了我来自@kunal 双关语的问题。谢谢!
  • gsubfn 包 vignette 的第 3 节末尾有一个例子,它不仅可以处理 K (kilo),还可以处理 G (giga) 和 P (peta),并且可以明显地扩展任意多个后缀的方式:cran.r-project.org/web/packages/gsubfn/vignettes/gsubfn.pdf
  • dat <- c("100k", "20K", "15K", "30") ; as.numeric(gsubfn::gsubfn("[kK]$", list(k = "e3", K = "e3"), dat)) 显示 Gabor 的 pkg 的实用性(供其他搜索找到此问题的人使用)。
  • 在这种情况下你可以只使用 sub 。建议您查看原始示例,而不是使用简单的 sub 来轻松处理。

标签: r


【解决方案1】:

类似于@RichardScriven 建议的另一种方式:

x <- c("1.4k", "14k")

as.numeric(sub("k", "e3", x, fixed = TRUE))

## [1]  1400 14000

【讨论】: