Sorting array and accessing its data

1 vue (au cours des 30 derniers jours)
Amin Waqas
Amin Waqas le 24 Jan 2021
Commenté : Mario Malic le 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.

Réponses (2)

Mario Malic
Mario Malic le 24 Jan 2021
Modifié(e) : Mario Malic le 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 commentaires
Amin Waqas
Amin Waqas le 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 le 24 Jan 2021
I still don't understand, this will give you the vector sorted by I indices.
X(I)

Connectez-vous pour commenter.


Amin Waqas
Amin Waqas le 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.

Catégories

En savoir plus sur Shifting and Sorting Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by