Хотя я искал, я не мог найти простой ответ на мой вопрос.
Предположим, у меня есть массив:
vector1 <- c(5,9,3)
vector2 <- c(10,11,12,13,14,15)
result <- array(c(vector1,vector2),dim = c(3,3,2))
Теперь я хочу разместить этот массив таким образом, чтобы получить элементы из определенных строк и столбцов. Например:
result[1,3,1:2]
result[3,1,1:2]
, так как у меня много индексов, они разбиты на
rowind=c(1,3)
colind=c(3,1)
Для поднабора я попытался использовать векторы строк и столбцов таким образом
dim(result[rowind,colind,1:2])
[1] 2 2 2
Это не то, что я хочу. Я хочу, чтобы мой вывод был одним значением для каждой пары индексов. Фактически, я хочу, чтобы моя извлеченная матрица имела размерность 2x2 (а не 2x2x2).
Чтобы вы знали, что я пробовал «цикл». Но проблема в том, что у меня много массивов, и это будет очень много времени.
result_c=matrix(NA,nrow=2,ncol=2)
for (i in 1:2){
result_c[i,]=result[rowind[i],colind[i],]
}
Спасибо за вашу помощь.