Sorting array and accessing its data

1 次查看(过去 30 天)
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.

回答(2 个)

Mario Malic
Mario Malic 2021-1-24
编辑:Mario Malic 2021-1-24
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 个评论
Amin Waqas
Amin Waqas 2021-1-24
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 2021-1-24
I still don't understand, this will give you the vector sorted by I indices.
X(I)

请先登录,再进行评论。


Amin Waqas
Amin Waqas 2021-1-24
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.

类别

Help CenterFile Exchange 中查找有关 Shifting and Sorting Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by