我会试着这样说:
我正在做一笔钱:
tot <- fac$a[,1]+fac$b[,1]
其中a和b是因子,1是第一列。直到这里它没事。
现在我想使用for循环来为所有列做总和:
tot <- 0
for (i in 5:13) {
tot[,i] <- fac$a[,i]+fac$b[,i]
}
哪个不起作用。
有什么建议吗? 感谢。
答案 0 :(得分:2)
我只能猜出你的问题。 (您忘记了错误消息。)
恕我直言它不起作用,因为tot
属于数字而没有矩阵(并且没有列也没有任何可以通过索引{{1}访问的行})。
修复您的代码:i
顺便说一下,你不应该使用 for loop 来进行这种计算。改为使用矢量化:
tot <- matrix(ncol=ncol(fac$a), nrow=nrow(fac$b))