How to replace elements different than 0 and different than NaN to 1?
    5 ビュー (過去 30 日間)
  
       古いコメントを表示
    
I have this huge matrix with a lot of elements: (i) equal to zero; (ii) number different than zero; (iii) NaN values ...
I need to replace all the the NUMBERS different than 0 to 1.
How do I do it not replacing the NaN values?
0 件のコメント
採用された回答
  Mohammad Monfared
      
 2013 年 10 月 24 日
        Let the matrix name, A, so this is done by:
A(xor((A~=0),isnan(A))) = 1 ;
その他の回答 (1 件)
  Azzi Abdelmalek
      
      
 2013 年 10 月 24 日
        
      編集済み: Azzi Abdelmalek
      
      
 2013 年 10 月 24 日
  
      A(A~=0)=1
%or maybe you want
idx=isnan(A) | A==0
A(~idx)=1
3 件のコメント
  Azzi Abdelmalek
      
      
 2013 年 10 月 24 日
				
      編集済み: Azzi Abdelmalek
      
      
 2013 年 10 月 24 日
  
			Ok, then just run the second code
idx=isnan(A) | A==0
A(~idx)=1
参考
カテゴリ
				Help Center および File Exchange で NaNs についてさらに検索
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!