Sorting array and accessing its data

1 Ansicht (letzte 30 Tage)
Amin Waqas
Amin Waqas am 24 Jan. 2021
Kommentiert: Mario Malic am 24 Jan. 2021
I have an array of 10 elements let say X=[4.7955 4.9155 5.1647 5.2406 5.0180 4.9145 4.9905 4.7852 4.8335 5.0465] after sorting it using
[B,I] = sort(X,'ascend') i easily get the index as :
I=[8 1 9 6 2 7 5 10 3 4]
My question is how to access the sorted index data for futher process for example i want to access the data at index 8.

Antworten (2)

Mario Malic
Mario Malic am 24 Jan. 2021
Bearbeitet: Mario Malic am 24 Jan. 2021
MATLAB Onramp will get you covered on basics of MATLAB.
To get the value you asked for, use this
X(8)
The vector B holds the sorted data, so if you index into it, like this, you'll get X(8) value
B(1)
  4 Kommentare
Amin Waqas
Amin Waqas am 24 Jan. 2021
This will give me only one value but my requirements is first to sort the values in ascending order than based on their indexing accessing their data corresponding data just like first use the data at index 8 which is 4.7852 then use the next index value data and so on
Mario Malic
Mario Malic am 24 Jan. 2021
I still don't understand, this will give you the vector sorted by I indices.
X(I)

Melden Sie sich an, um zu kommentieren.


Amin Waqas
Amin Waqas am 24 Jan. 2021
Mario Malic might be i am failed to understand you my problem actually, the problem is to first sort the array then after sorting use its indexies to accessing their data just like first access the data at first sort index 8 use it then access the next sorted index and use its data so on. On your suggested solution B(1) i can definately access the data but the problem is not accessing the data using their indexies.

Kategorien

Mehr zu Shifting and Sorting 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