【发布时间】:2015-08-21 17:49:03
【问题描述】:
在这个玩具示例中,我想将系数列表与每行的相应值“求和”,并将结果分配给新列。下面的代码适用于给定的记录,但是当我删除 i 参数时,它的行为对我来说是意外的。我可以在循环中执行此操作或应用,但似乎我缺少一种 data.table 方式。
DT <- data.table(mtcars)
vars <- c("mpg","cyl","wt")
coeffs <- c(2,3,4)
DT[1,Calc := sum(coeffs*DT[1,vars,with=FALSE])] # row 1 is assigned 70.480
DT[,Calc := sum(coeffs*DT[,vars,with=FALSE])] # all rows assigned 2830.416
【问题讨论】:
-
你在找
?rowSums -
这可能是我的问题的欺骗:stackoverflow.com/q/19279075/1191259 我认为@eddi 的回答很好;我想我应该接受它。
标签: r data.table