Sorting array and accessing its data

1 visualizzazione (ultimi 30 giorni)
Amin Waqas
Amin Waqas il 24 Gen 2021
Commentato: Mario Malic il 24 Gen 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.

Risposte (2)

Mario Malic
Mario Malic il 24 Gen 2021
Modificato: Mario Malic il 24 Gen 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 Commenti
Amin Waqas
Amin Waqas il 24 Gen 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 il 24 Gen 2021
I still don't understand, this will give you the vector sorted by I indices.
X(I)

Accedi per commentare.


Amin Waqas
Amin Waqas il 24 Gen 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.

Categorie

Scopri di più su Shifting and Sorting Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by