У меня есть два 3D-массива:
a=array(1:27, dim=c(3,3,3))
b=array(c(0,2,6,0), dim=c(3,3,3))
Я хотел бы суммировать все значения в массиве a вдоль z-измерения (получая 2D-матрицу), для которых значение в соответствующемx, y, z-местоположение в массиве b -> 0.
Я бы предпочел комбинацию apply (лучше всего со стандартной функцией) и оператора if, например
summed=apply(a, c(1,2), sum {if(b[b>0])})
что дает мне синтаксическую ошибку, хотя.Что мне здесь не хватает?