Assigning row names iteratively

Hello, i have a [365, 24] table reporting values per hour for each day of the year.
How can I assign days names to all 365 rows ('Monday','Tuesday'...) without writing 365 names with 'RowNames'?

1 Commento

There is only a small chance that some random year will start on a Monday.
To obtain the correct days of the week you should use DATETIME.

Accedi per commentare.

 Risposta accettata

Matt J
Matt J il 4 Dic 2023
Modificato: Matt J il 4 Dic 2023
The row names of a table cannot be non-unique, so having the names of the 7 days of the week repeat 52 times would not generate legitimate input for RowNames. However, you can make a string column of the days of the week as below and prepend it to your table as an additional (but ordinary) table column.
names=repmat(["Monday";"Tuesday";"Wednesday";"Thursday";"Friday";"Saturday";"Sunday"],52,1);
names=[names;names(1)]
names = 365×1 string array
"Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday" "Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday" "Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday" "Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday" "Sunday" "Monday" "Tuesday"

Più risposte (0)

Prodotti

Release

R2022b

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by