如何在R中替换数据帧中的数据?

时间:2018-12-28 18:18:32

标签: r

我目前是R的新手(我有基本知识,仅此而已),并且在数据框中存在一个小问题:

Data frame in question

我想在这里做的是:

  • 对于“工资”列中的所有元素,将“ K”替换为“ 000”
  • 对于“值”列中的所有元素:如果单元格包含“。”,则将“ M”替换为“ 00000”,如果不包含,则将其替换为“ 000000”

我想可以通过for循环来实现,但是尝试之后我可以说我不习惯。

感谢您的回答

Rémi

1 个答案:

答案 0 :(得分:0)

与此类似的解决方案可能更全面:

parseBigNumbers <- function(vec) {

  vec <- gsub("K", "e+3", vec)
  vec <- gsub("M", "e+6", vec)
  as.numeric(substr(vec, 2, nchar(vec)))

}

df$Wage <- parseBigNumbers(df$Wage)
df$Value <- parseBigNumbers(df$Value)