我有一个矩阵(x)
y<-c(0.5,1.2,4.8)
y
[1] 0.5 1.2 4.8
和向量(y):
[ ,1] [ ,1][ ,2][ ,3] [ ,1]
[1, ] 0.5 [1, ] 6 0 0 [1, ] 3
(y)[2, ] 1.2 * (x) [2, ] 3 4 0 = (w) [2, ] 6,3
[3, ] 4.8 [3, ] 2 8 5 [3, ] 34,6
我想通过向量y的元素计算直到矩阵对角线的累积和。 我需要的是:
[ ,1]
[1, ] 3 0.5*6
(w)[2, ] 6,3 = 0.5*3 + 1.2*4
[3, ] 34,6 0.5*2 + 1.2*8 + 4.8*5
其中:
cumsum(y*x)
结果我需要这个向量(w)。
[1] 3.0 6.6 16.2 16.2 21.0 59.4 59.4 59.4 83.4
cumsum(y*t(x))
[1] 3.0 3.0 3.0 4.5 9.3 9.3 10.3 19.9 43.9
- 按数字顺序计算列的所有元素。我有一个矢量:
Warning:com.firebase.geofire.GeoFire: can't find referenced method 'com.google.firebase.tasks.Task setValue(java.lang.Object,java.lang.Object)' in program class com.google.firebase.database.DatabaseReference
我需要,不会计算零。 可能吗? 提前谢谢!
答案 0 :(得分:3)
您可以尝试使用colSums
,即
colSums(y *t(x))
#[1] 3.0 6.3 34.6
答案 1 :(得分:1)
for循环可用于获取w累积值:
w=integer()
for(i in 1:ncol(x)){
w[i]=sum(x[i,1:i]*y[1:i])
}
w