找到了dataframe
的解决方案,将所有列中的文本替换为另一个文本。但我无法对数据表使用相同的方法。以下是我尝试过的。但是,当将 data.frame
更改为 data.table
时,它不会提供正确的数据。
DF<- data.frame(lapply(DT, function(x) {gsub("abc", "xyz", x)}))
我需要在 data.table
对象的所有列中查找并替换所有出现的 abc
为 xyz
最佳答案
如果它是一个 data.table
并且我们想要更改所有列值,则使用 data.table
方法。根据OP的代码,我们选择所有列(因此无需指定.SDcols
),使用lapply
循环遍历Data.table的子集,替换' abc' 与 'xyz' 和 gsub
(假设有多个 'abc' 实例),并通过将输出分配 (:=
) 回原始列来更新原始列列
attrdata2[, names(attrdata2) := lapply(.SD, function(x) gsub("abc", "xyz", x))]
关于将所有列中的文本替换为数据表 R 中的另一个文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53649580/