【发布时间】:2018-07-05 22:05:50
【问题描述】:
我有一个矩阵 (x)
x<-c(6,3,2,0,4,8,0,0,5)
x<-matrix(x, nrow = 3, ncol = 3)
[ ,1][ ,2][ ,3]
[1, ] 6 0 0
[2, ] 3 4 0
[3, ] 2 8 5
和一个向量(y):
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
地点:
[ ,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
因此我需要这个向量 (w)。
cumsum(y*x) – 按数字顺序计算列的所有元素。我有一个向量:
[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
我需要,不会计算零。 可能吗? 提前谢谢你!
【问题讨论】:
-
我不明白
cumsum(y*x)的输出。你介意再解释一下吗? -
为什么是 cumsum,当你在乘法矩阵时?
y%*%t(x) -
x - 是矩阵 y- 是向量。我正在尝试逐行获取带有矩阵的向量的累积和