Подтвердить что ты не робот

Что такое многомерный эквивалент Rbind и cbind?

При работе с матрицами в R их можно разместить рядом друг с другом или складывать их друг над другом с помощью cbind и rbind соответственно. Какова эквивалентная функция для укладки матриц или массивов в другие измерения?

Например, следующее создает пару 2x2-матриц, каждая из которых имеет 4 элемента:

x = cbind(1:2,3:4)
y = cbind(5:6,7:8)

Что такое код для их объединения в массив 2x2x2 с 8 элементами?

4b9b3361

Ответ 1

См. пакет abind. Если вы хотите, чтобы они привязывались к третьему измерению, сделайте следующее:

library(abind)
abind(x, y, along = 3)

См. ?abind

Кроме того, abind дает намного больше удобства, но для простой привязки вы можете просто манипулировать значениями непосредственно, основываясь на стандартном порядке:

array(c(x, y), dim = c(2, 2, 2))