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

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

 Akzeptierte Antwort

Davide Masiello
Davide Masiello am 30 Mär. 2023
Bearbeitet: Davide Masiello am 30 Mär. 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

Weitere Antworten (0)

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by