Move logical array by one

1 次查看(过去 30 天)
Hello,
i have the following logical:
id1=logical([0;0;1;1;1]);
id1
____
false
false
true
true
true
now i am searching for an alternative way to create another logical like:
id2=logical([0;1;1;1;0]);
id2
____
false
true
true
true
false
So every 1(true) from id1 should move one row up in id2 and the last 1(true) from id1 should become false in id2. The amount of "true" (3 in this case) shall be the same in both logicals, just moved by one.
I greatly appreciate any assistance.

采纳的回答

Matt J
Matt J 2019-4-16
编辑:Matt J 2019-4-16
id2=circshift(id1,-1)

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Statistics and Machine Learning Toolbox 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by