如何对data.table中的每个指定列应用相同的函数

如何对data.table中的每个指定列应用相同的函数

我有一个data.table,我想用它对某些列执行相同的操作。这些列的名称是在字符向量中给出的。在这个特殊的例子中,我想把所有这些列乘以-1。

一些玩具数据和指定相关列的向量:

library(data.table)dt <- data.table(a = 1:3, b = 1:3, d = 1:3)cols <- c("a", "b")

现在我是这样做的,在字符向量上循环:

for (col in 1:length(cols)) {
   dt[ , eval(parse(text = paste0(cols[col], ":=-1*", cols[col])))]}

有没有一种不使用for循环直接执行此操作的方法?


慕后森
浏览 518回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Vue.js