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?

Réponses (1)

Cris LaPierre
Cris LaPierre le 3 Nov 2021
Modifié(e) : Cris LaPierre le 3 Nov 2021

0 votes

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 commentaire

Richard Turner
Richard Turner le 11 Nov 2021
Thanks. I also managed to find a method by changing to an array and using circshift which worked well.

Connectez-vous pour commenter.

Catégories

Produits

Version

R2015b

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by