Hi,
I have two vectors for example:
A=[0 8 2 9 1 10 23]
B=[2 30 23 90 45 47 5]
I need to make chart where B is depending of A ( B=f(A) )
I sorted A vector using:
Asorted = sort(A,'ascend')
How to sort B vector to the elements corresponding to the values of A (before sorting)?
In the end i want to get vectors
Asorted=[0 1 2 8 9 10 23]
Bsorted=[2 45 23 30 47 5]

 Réponse acceptée

Ameer Hamza
Ameer Hamza le 29 Nov 2020
Modifié(e) : Ameer Hamza le 29 Nov 2020

0 votes

Second outout if sort() gives the index used to sort the vector. You can use it to arrange element of B.
A=[0 8 2 9 1 10 23];
B=[2 30 23 90 45 47 5];
[Asorted, idx] = sort(A,'ascend')
Bsorted = B(idx)

4 commentaires

Aleksandra Pawlak
Aleksandra Pawlak le 29 Nov 2020
It works in code where I define only this 2 vectors, but not works in my code.
In command window i have information:
Unrecognized function or variable 'idx'.
Error in stobc (line 132)
Bsorted=B(idx)
Ameer Hamza
Ameer Hamza le 29 Nov 2020
Can you show your code. How have you used my lines in your code?
Aleksandra Pawlak
Aleksandra Pawlak le 29 Nov 2020
I see the problem- i make missprint: ixd instead of idx in [Asorted, idx].
Thank you and sorry for the confusion
Ameer Hamza
Ameer Hamza le 29 Nov 2020
I am glad to be of help!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by