Sorting rows by a specific value

9 visualizzazioni (ultimi 30 giorni)
Richard Turner
Richard Turner il 3 Nov 2021
Commentato: Richard Turner il 11 Nov 2021
Hi, I have a table of data organized by month. The first column in the table is month and sorted in ascending order from 1>12. I'd like to sort the table starting at the current month e.g. current month = 10, so rows are sorted 10, 11,12,1,2....
Is there an easy way to do this with sortrows or similar?

Risposte (1)

Cris LaPierre
Cris LaPierre il 3 Nov 2021
Modificato: Cris LaPierre il 3 Nov 2021
There are a couple ways to do this. What works best depends on your data. You can use sortrows to sort your table keeping rows together.
Option 1 - add a year column, Sort by year then month. Use sortrows,
Option 2 - turn your month variable into a categorical, and define a category order using either the 'Ordinal',true name value pair or reordercats function. You can then sort using sortrows,
  1 Commento
Richard Turner
Richard Turner il 11 Nov 2021
Thanks. I also managed to find a method by changing to an array and using circshift which worked well.

Accedi per commentare.

Categorie

Scopri di più su Shifting and Sorting Matrices in Help Center e File Exchange

Tag

Prodotti


Release

R2015b

Community Treasure Hunt

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

Start Hunting!

Translated by