Replacing values in a table

2 vues (au cours des 30 derniers jours)
Rylan Thronburg
Rylan Thronburg le 7 Avr 2019
Modifié(e) : per isakson le 8 Avr 2019
Hi, I need to replace all numerical values in this table with a ranking of 5 through 1, but I can't use the city names associated with the numbers because my code has to be able to work for different data sets.
Location EndAvg
___________________ _________
'Oklahoma City, OK' [ 7.5000]
'Buffalo, NY' [ 7.8000]
'Wichita, KS' [ 8.6000]
'Rochester, MN' [ 8.8000]
'Abilene, TX' [10.9000]
This is my table, and I need to replace 7.5 with 1, 7.8 with 2, 8.6 with 3, and so on. But say there were 7 cities, I would need it to be ranked from 1-7. How do I get this done?

Réponses (1)

Walter Roberson
Walter Roberson le 7 Avr 2019
[sorted_vals, sortidx] = sort(YourTable.EndAvg);
YourTable.Rank = sortidx;
  2 commentaires
Rylan Thronburg
Rylan Thronburg le 8 Avr 2019
This doesn’t seem to work, unless I’m just using it wrong.
Walter Roberson
Walter Roberson le 8 Avr 2019
The above would create a new variable named Rank in the table. You could replace EndAvg by assigning to YourTable.EndAvg instead of to YourTable.Rank

Connectez-vous pour commenter.

Tags

Produits


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by