对于以下矩阵:
my_matrix<-matrix(seq(from=1,to=100,by=2))
如果我想计算每列的总和,则只需输入以下命令:colSums(my_matrix)
但是,我需要在不使用colSums(my_matrix)
函数的情况下创建与colSums
的等效项,而是使用for循环。
请一些帮助!!!
答案 0 :(得分:1)
起诉,您可以尝试这个简单的循环,希望它有助于解决您的问题。
sum <- 0
for(i in 1:ncol(my_matrix)){
sum[i] <- sum(my_matrix[,i])
}
答案 1 :(得分:0)
如果您明确想使用for
循环,这是一种方法:
mat <- matrix(1:50, byrow = TRUE, ncol = 10)
all_vals <- numeric(ncol(mat))
for (i in seq(ncol(mat))) {
all_vals[i] <- sum(mat[, i])
}
all_vals
#[1] 105 110 115 120 125 130 135 140 145 150
与
具有相同的值colSums(mat)
#[1] 105 110 115 120 125 130 135 140 145 150