Move logical array by one

2 visualizaciones (últimos 30 días)
Max Bornemann
Max Bornemann el 16 de Abr. de 2019
Comentada: Max Bornemann el 16 de Abr. de 2019
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.

Respuesta aceptada

Matt J
Matt J el 16 de Abr. de 2019
Editada: Matt J el 16 de Abr. de 2019
id2=circshift(id1,-1)

Más respuestas (0)

Categorías

Más información sobre Statistics and Machine Learning Toolbox en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by