Sorting rows by a specific value

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

0 voti

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

Thanks. I also managed to find a method by changing to an array and using circshift which worked well.

Accedi per commentare.

Categorie

Prodotti

Release

R2015b

Tag

Richiesto:

il 3 Nov 2021

Commentato:

il 11 Nov 2021

Community Treasure Hunt

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

Start Hunting!

Translated by