How to spread out an array of integers according to it's value?

1 Ansicht (letzte 30 Tage)
Hi there, say I observe a random array of integers 1-10. x = [6 3 9 4 7 10]. how can i transform this array so each integer is stored in its integer-row value. so 6 would be stored in the 6th row, 3 in the 3rd row, 9 in the 9th row, and so on and the gaps(spaces where there is no integer would be just zero) like so: resultant X = [0 0 3 4 0 6 7 0 9 10]. any help would be appreciated.
thank you.

Akzeptierte Antwort

Star Strider
Star Strider am 9 Jun. 2014
This works:
x = [6 3 9 4 7 10];
y = zeros(1,max(x));
y(x) = x
producing:
y =
0 0 3 4 0 6 7 0 9 10

Weitere Antworten (0)

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by