How to specify a number to the specified position in the array?

1 Ansicht (letzte 30 Tage)
matlab问题图.jpgHi guys, the question is that now I used 'zeros' command, to create an array which have 20 positions, then there are some data will be created to fill the array, and I want to point data to the specified position. For example, the No.1 data should stay in the first position, the end data should stay in the second position, the No.2 data should stay in the third position. Is there any function can help me arrange their positions? Thanks a lot !

Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 14 Okt. 2019
a = [2 3 5 7 11];
out = [a;flip(a,2)];
out = out(1:numel(a));

Weitere Antworten (1)

the cyclist
the cyclist am 13 Okt. 2019
Bearbeitet: the cyclist am 13 Okt. 2019
There's probably not an built-in function that does just that, but it's easy to do it with basic array manipulations. Here is one way.
newData = 1:20; % Your example "new" data
newNewData = [newData(1:10); newData(20:-1:11)]; % Make even newer data, temporarily in 2-d array
newNewData = newNewData(:)' % Make the newer data into a row array
  5 Kommentare
the cyclist
the cyclist am 14 Okt. 2019
Bearbeitet: the cyclist am 14 Okt. 2019
When you say "random", do you mean the length of the vector is random? Or that the values in the vector are random?
If your data is
[2 3 5 7 11]
what would you want the output to be?
YANGCHENG LIUL
YANGCHENG LIUL am 14 Okt. 2019
random length of vector and random data, it is a length calculation function, the number of variable maybe 10, 15, or 20, and the value is random too. As you gaved example, I want the data can be arranged as [2 11 3 7 5].

Melden Sie sich an, um zu kommentieren.

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