我有一个以下向量。其中,我们有
\n
和带有数字数据的 k
,k
代表 1000。
v <- c("2.2K\n", "3\n", "1K\n", "1", "45", "5\n")
> v
> [1] "2.2K\n" "3\n" "1K\n" "1" "45" "5\n"
我需要将上面的向量转换为数值向量,如下所示。
> v
[1] "2200" "3" "1000" "1" "45" "5"
有人可以帮助我吗?
当我使用以下命令时,我解决了
\n
,但无法解决K
。
> as.numeric(v)
[1] NA 3 NA 1 45 5
您可以使用
scan
+ gsub
> as.numeric(scan(text = gsub("K", "e3", v), what = "", quiet = TRUE))
[1] 2200 3 1000 1 45 5