Find element satisfying condition in 3D array, then apply operation to all elements in the column number
    8 ビュー (過去 30 日間)
  
       古いコメントを表示
    
I have two 3D arrays A & B with I x J x K elements. I want to find all the elements that satisfy a certain condition in A (e.g. A<0). Now, if element A(i,j,k) satisfies this condition, I would like to apply some operation to ALL the elements that are in the coulmn j of array B.  
How can I do this?    
0 件のコメント
採用された回答
  ANKUR KUMAR
      
 2021 年 3 月 12 日
        
      編集済み: ANKUR KUMAR
      
 2021 年 3 月 12 日
  
      " I want to find all the elements that satisfy a certain condition in A (e.g. A<0). ": I hope you mean to find the indices of the elements which satisfies the given cretieria.
%creating a random matrix;
A=randi(5,5,3,4)-3
ind = find(A>0);
[ii,jj,kk] = ind2sub(size(A), ind);
[ii,jj,kk]
" I would like to apply some operation to ALL the elements that are in the coulmn j of array B. ":
for kk=1:size(A,3)
   B(:,unique(jj),kk)= B(:,unique(jj),kk) *5 ; %some operation
end
Hope this helps.
その他の回答 (0 件)
参考
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!