10

我有一整列数字,其中包括数千个逗号分隔符。当我尝试从中创建一个数字列时,超过 999 的任何内容都变为 NA。

我使用了cbind:

df <- cbind(df, var2 = as.numeric(as.character(df$var1)))

最后得到:

        var1  var2
1   2,518.50    NA
2   2,518.50    NA
3   5,018.50    NA
4   4,018.50    NA
5  10,018.50    NA
6     318.50 318.5
7   2,518.50    NA
8   3,518.50    NA
9   7,518.50    NA
10  1,018.50    NA

有没有办法去掉逗号或告诉as.numeric如何处理它们?

4

2 回答 2

15

如果您尝试向 中添加新列var2df可以使用以下命令

  df$var2 <- as.numeric(gsub(",", "", as.character(df$var1)))
于 2012-11-27T22:36:30.730 回答
4

使用as.numeric(gsub(",", "", df$var1)).

您想使用gsubassub只会替换第一个逗号。

于 2012-11-27T22:37:14.897 回答