我正在尝试将所有元素添加到矩阵中。这是我的矩阵的一个例子(实际矩阵更大):
m = matrix(c(528,479,538,603),nrow=2,ncol=2)
m
A B
male 528 538
female 479 603
我正在尝试:
sum.elements = colSums(colSums(m))
但是它给出了以下错误:
colSums(colSums(m))中的错误:'x'必须是至少两个的数组尺寸
我尝试做:
x = colSums(m)
sum.elements = x[1] + x[2]
但是当您有一个100列的矩阵时,这会很长...
任何帮助将不胜感激!
您可以执行sum
。它还具有na.rm
选项,可删除NA
值。
sum(m)
#[1] 2148
[通常,sum
适用于vector
,matrix
和data.frame
set.seed(24)
m1 <- matrix(sample(0:20, 5000*5000, replace=TRUE), ncol=5000)
system.time(sum(m1))
# user system elapsed
# 0.027 0.000 0.026
system.time(sum(colSums(m1)))
# user system elapsed
# 0.027 0.000 0.027
system.time(Reduce('+', m1))
# user system elapsed
#25.977 0.644 26.673
Reduce
将起作用
Reduce(`+`,m)
[1] 2148