Logical Indexing Within a Symbolic Array
    3 次查看(过去 30 天)
  
       显示 更早的评论
    
Suppose I have a symbolic array like
A = [0 0 0 w7 0 0;
     0 0 0 0 w9 0;
     0 w3 0 0 0 0;
     0 0 w5 0 0 0;
     w1 0 w6 w8 0 0;
     w2 w4 0 0 w10 0];
where w1, ..., w10 are symbolic real variables. I would like to generate a "binary" array which identifies where the symbolic variables w1, ..., w10 are located, meaning that the output should be
A_bin = [0 0 0 1 0 0;
         0 0 0 0 1 0;
         0 1 0 0 0 0;
         0 0 1 0 0 0;
         1 0 1 1 0 0;
         1 1 0 0 1 0];
Is there a way MATLAB could generate A_bin from A?
Thank you.
0 个评论
采纳的回答
  Ameer Hamza
      
      
 2020-12-30
        Try this
syms w1 w2 w3 w4 w5 w6 w7 w8 w9 w10
A = [0 0 0 w7 0 0;
     0 0 0 0 w9 0;
     0 w3 0 0 0 0;
     0 0 w5 0 0 0;
     w1 0 w6 w8 0 0;
     w2 w4 0 0 w10 0];
A_bin = ~isAlways(A==0)
or
A_bin = ~isnan(A./A)
更多回答(1 个)
另请参阅
类别
				在 Help Center 和 File Exchange 中查找有关 Operators and Elementary Operations 的更多信息
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


