How can I change value of array?

1 visualizzazione (ultimi 30 giorni)
sc
sc il 7 Mag 2018
Commentato: Jan il 11 Mag 2018
Hi!
I've an array that is A but I'd like to create another array, B, that containes in order the position of this values.
For example: if A is [1000,700,500,350,200,100,50,15], B must be [8,7,6,5,4,3,2,1].
I tried to do:
a = 8; % a is number of values in array
A = [1000,700,500,350,200,100,50,15];
for i = 1:a
B = A(i)
end
but B is not an array. How can I do?
  4 Commenti
sc
sc il 7 Mag 2018
'So B is just descending from length of A?'
No, because for example: if: A = [1000,500,700,350,100,200,50,15]; B must be B = [8,6,7,5,3,4,2,1].
In practice I should associate the values of A to the values of B, but values however may not be descendants.
It's hard to explain: I would like to create the ascending order of A's values, but insert them in order of appearance in B.
Is it possible?
Jan
Jan il 11 Mag 2018
@sc: Please stop closing your question, when they got accepted answers already. After closing the questions are deleted, and this would remove the invested time of the ones, who help you. This is counter-productive in a public forum.

Accedi per commentare.

Risposta accettata

Jan
Jan il 7 Mag 2018
Maybe:
B = numel(A):-1:1
if the array A is sorted already. Otehrwise:
[~, B] = sort(A, 'ascend')

Più risposte (0)

Categorie

Scopri di più su Multidimensional Arrays 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