How to include NaN elements in an array based on a condition?

1 visualizzazione (ultimi 30 giorni)
Can someone help me out in writing a code to insert NaN eleemnts in an array if the element is not a consecutive multiple of 2? For example if a = [2 4 6 12 14 18]; Im expecting to be turned out as a = [2 4 6 NaN NaN 12 14 NaN 18]; Thank you

Risposta accettata

Davide Masiello
Davide Masiello il 30 Mar 2023
Modificato: Davide Masiello il 30 Mar 2023
a = [2 4 6 12 14 18];
A = a(1):2:a(end);
new_a = zeros(size(A));
idx = any(a'== A,1);
new_a(idx) = a;
new_a(~idx) = nan;
new_a
new_a = 1×9
2 4 6 NaN NaN 12 14 NaN 18

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by