Я пытаюсь рассчитать индекс растительности в соответствии с (b1-b2)/(b2-b3)
, где b - это спектральный диапазон, то есть переменная в кадре data.frame.
Я хочу вычислить все возможные комбинации b1, b2, b3 согласно этому уравнению. Всего 623 полосы.
Я проделал то же самое для двух индексов полос, таких как (b1 / b2), и это сработало, но по какой-то причине это не работает для трех комбинаций полос. Я думаю, проблема может заключаться в трех измерениях.
создать 3D-массив со всеми размерами = столбцам в reflectance df
arr1 <- array(NA, c(ncol(reflectance.new),ncol(reflectance.new),ncol(reflectance.new)))
for (i in 1:ncol(reflectance.new[,1:623])) {
for (j in 1:ncol(reflectance.new[,1:623])) {
for (k in 1:ncol(reflectance.new[,1:623]))
if (i==j) {
arr1[i,j,k] <- NA }
else if (i==k) {
arr1[i,j,k] <- NA
} else if (j==k) {
arr1[i,j,k] <- NA
} else {arr1[i,j,k] <- (reflectance.new[,i] - reflectance.new[,j])/(reflectance.new[,j]-reflectance.new[,k])}
}
}
Любая помощь будет принята с благодарностью!