How to use invert values of a logical array
197 次查看(过去 30 天)
显示 更早的评论
Hello people,
the problem seems quite simple but I cannot figure out how to implement it.
I have two logical arrays. In one I have several values, and in the other the information about which of them I want to toggle. It is to apply a NOT gate, but I do not know how to implement it.
A = [1 1 1 1 1
0 1 0 1 0
1 1 1 1 1]
toggle = [0 0 0 0 0
1 1 1 1 1
0 0 0 0 0]
result = [1 1 1 1 1
1 0 1 0 1
1 1 1 1 1]
So in the end I want to toggle the middle row of A avoiding the use of if statements. How to do it?
Thanks!
0 个评论
采纳的回答
Sean de Wolski
2014-3-11
A = [1 1 1 1 1
0 1 0 1 0
1 1 1 1 1]
toggle = logical([0 0 0 0 0
1 1 1 1 1
0 0 0 0 0])
% Apply not(), which is equivalent to ~
A(toggle) = ~A(toggle)
更多回答(1 个)
Sagar Damle
2014-3-11
xor(A,toggle)
OR
bitxor(A,toggle)
It is assumed that 'A' and 'toggle' contain only 0's and 1's.
0 个评论
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!