Я вычислил несколько матриц из большого набора данных, чтобы облегчить вычисления на моем ноутбуке.В идеале каждая матрица должна быть 654x654 (проблеск c1), но, к сожалению, некоторые из них немного меньше (например, 646x646 - проблеск c11).Это проблема, потому что мне нужно, чтобы они были размером 654х654, чтобы правильно их сложить.
> glimpse(c1)
num [1:654, 1:654] 0 25.811 21.364 0.927 4.069 ...
- attr(*, "dimnames")=List of 2
..$ : chr [1:654] "1" "2" "3" "4" ...
..$ : chr [1:654] "1" "2" "3" "4" ...
> glimpse(c11)
num [1:646, 1:646] 0 18.912 7.914 0.668 1.09 ...
- attr(*, "dimnames")=List of 2
..$ : chr [1:646] "1" "2" "3" "4" ...
..$ : chr [1:646] "1" "2" "3" "4" ...
У всех матриц есть прямые номера для строк / столбцов (идеальная квадратная матрица c1 идет от 1 до 654).
Как я могу сделать R способным идентифицировать эти пропущенные строки / столбцыи вставка в эти строки / столбцы значений, равных 0?
Упрощенная идея, что, если вы сделаете это, должна работать и для большой:
4x4 Matrix
1 2 3 4
1 0 0 0 0
2 0 0 0 0
3 0 0 0 0
4 0 0 0 0
3x3 matrix
1 2 4
1 1 4 7
2 2 5 8
4 3 6 9
4x4 solution matrix
1 2 3 4
1 1 4 0 7
2 2 5 0 8
3 0 0 0 0
4 3 6 0 9