Я хочу иметь треугольную матрицу для вектора, когда длина вектора меньше длины замены. например:
v<- c(1,2,3,4,5,6)
и
mat<- matrix(0,5,5)
.
Если я использую
mat[upper.tri(mat, diag=FALSE)]<- v
, результат:
[,1] [,2] [,3] [,4] [,5]
[1,] 0 1 2 4 1
[2,] 0 0 3 5 2
[3,] 0 0 0 6 3
[4,] 0 0 0 0 4
[5,] 0 0 0 0 0
Но я не хочу заменять больше, чем длина вектора в матрице. И я хочу иметь:
[1,] 0 1 2 4 0
[2,] 0 0 3 5 0
[3,] 0 0 0 6 0
[4,] 0 0 0 0 0
[5,] 0 0 0 0 0