从R中的数字中删除逗号

标签 r string

我的数字有“,”表示 1,000 及以上,R 将其视为因数。我想将两个这样的变量从因子转换为数字(实际上这两个变量都是数字,但 R 出于某种原因将它们视为因子(数据是从 excel 导入的)。更改因子变量 mydata$x1对于数字变量,我使用以下代码,但它似乎无法正常工作并且某些值发生变化,例如它将 8180 更改为零!它也发生了许多其他值。是否有其他方法可以做到这一点而不会出现此类问题?

mydata$x1<- as.numeric(as.character(mydata$x1))

最佳答案

因为问题似乎是您在 Excel 中将数字数据保存为字符(而不是使用格式来显示逗号),您可能需要这样的函数。

#' Replace Commas Function
#'
#' This function converts a character representation of a number that contains a comma separator with a numeric value.
#' @keywords read data
#' @export
replaceCommas<-function(x){
  x<-as.numeric(gsub("\\,", "", x))
}

然后

rcffull$RetBackers <- replaceCommas(rcffull$Returning.Backers)
rcffull$NewBackers <- replaceCommas(rcffull$New.Backers)

关于从R中的数字中删除逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49910861/

相关文章:

c - 使用指针初始化字符串

r - Knitr 忽略 width 和 out.width 选项

r - 允许在一个 Shiny 的数字输入中包含多个数字

r - 如何解锁R中的环境?

list - 对 R 中的组进行回归和预测

c# - 无论顺序如何,获取字符串列表的哈希值

java - 如何将字符串转换为固定 int 二维数组(特殊情况)?

复数指数的 Python 与 R/Matlab 实现

C++ - 截断变量文件名中 double 的小数位

ios - 我如何从字符串中获取一个整数?