У меня есть трехмерный массив в R, например,
a <- array(1:24, dim=c(2,3,4))
Я буду ссылаться на размеры этого массива как строки, столбцы и слои.У меня есть вторая переменная, b , которая предназначена для предоставления индекса для этого массива, например,
b <- array(c(1,4,3,2,2,1), dim=c(2,3))
. Я хотел бы получить двумерную переменную, d., который содержит значение из трехмерной переменной a в слое, заданном b для каждой строки и столбца в a и b ,Так, например, d[1, 1] <- a[1, 1 , b[1, 1]]
и d[2, 3] <- a[2, 3, b[2, 3]]
и так далее.В этом примере я должен получить:
d == array(c(1, 20, 15, 10, 11, 6), dim=c(2, 3))
Какой самый эффективный способ сделать это?