请问大神,R中处理数据时,含有千分位分隔符的数值无法转换数据类型,如何处理?
例如:R中读入数据时,设置colClasses = c("character"),现想将销售金额那一列转换成数值类型,提示:
> data$销售金额<-as.numeric(data$销售金额)
Warning message:
NAs introduced by coercion
经查看,销售金额那一列有千位分隔符的数据都转换失败了,被强制转换成NA值
网上找到的答案不靠谱,哪位大神有好的解决办法呀?
步骤:
1、先将逗号分隔符替换为空格
2、再将空格用正则式替换
- > a<-"1,234.2"
- > b<-as.numeric(a)
- <span style="color:#cc0000;">Warning message:
- NAs introduced by coercion
- </span>> b<-<strong>chartr</strong>(","," ",a)
- > b<-<strong>gsub</strong>("[N ]","",b)
- > result<-as.numeric(b)
- > result
- [1] 1234.2