如何在R的整个数据框中用其他值替换特定值?

时间:2019-08-21 12:18:31

标签: r function replace

在我的一些变量的前面,行和列之间都有一个空格。我想用没有空格的相同变量替换所有包含空格的变量。我可以为每个变量做到这一点,但是它非常讲究,而且我敢肯定还有一种更优雅的方法。

df$var[df$var == " X"] <- "X"

我对每个变量和每个变量级别都执行了此操作。我可以编写一个自动删除空格的函数吗?

2 个答案:

答案 0 :(得分:0)

一种解决方法:

x <- c( " x", " y", " z")
x
# [1]  " x" " y" " z"
y <- gsub("[[:space:]]", "", x) 
y  
#[1] "x" "y" "z"  

答案 1 :(得分:0)

您可以看一下功能sapply
基本上,您可以尝试如下操作: df=sapply(df, function(x) f(x))f一起您要应用于所有列的功能;在您的情况下,如果我了解的话,可以删除一些空格。

我不确定性能。因为你的建议还不错 为了总体上提高您的效果,我建议您不再使用datatables,而不再使用dataframes(即使使用dplyr也是如此)。

希望它会为您提供帮助。