【发布时间】:2019-08-25 07:50:52
【问题描述】:
我有矢量
vector= c(4,6,2,9)
我需要得到像这样的对角矩阵(第二列应该包含在一个元素上向下滚动的向量,第三列 - 在两个元素上等):
4 0 0 0
6 4 0 0
2 6 4 0
9 2 6 4
我不明白我应该使用upper.tri。
我试过这个:
vector = c(4,6,2,9)
vector_length=length(a)
MATRIX= matrix(0, vector_length, vector_length)
MATRIX[!upper.tri(MATRIX)]=vector
MATRIX
失败了,因为结果是
[,1] [,2] [,3] [,4]
[1,] 4 0 0 0
[2,] 6 4 0 0
[3,] 2 6 9 0
[4,] 9 2 4 6
我应该如何正确使用这个功能?我应该如何解决我的问题?
【问题讨论】: