Converting cell array containing date strings to weekday?

1 vue (au cours des 30 derniers jours)
Jinah Lee
Jinah Lee le 1 Avr 2017
Commenté : Star Strider le 1 Avr 2017
Hello, I have a 366*1 cell array containing date string such as '2015-01-01'. I want to change this date string to weekday such as Monday, Tuesday..etc. What function should I have to use? Thanks!

Réponses (1)

Star Strider
Star Strider le 1 Avr 2017
Use the weekday function:
date_cell = {'2015-01-01'; '2015-01-02'; '2015-01-03'};
dn = datenum(date_cell, 'yyyy-mm-dd');
[~,DayOfWeek] = weekday(dn,'long')
DayOfWeek =
3×8 char array
'Thursday'
'Friday '
'Saturday'
  4 commentaires
Jinah Lee
Jinah Lee le 1 Avr 2017
This is part of 1st column of rawData. So 1st column of rawdata is a cell array containing bunch of data strings.. and I want to change this into weekday so that I could calculate average of certain values per weekday..
'Date'
'2015-01-01'
'2015-01-02'
'2015-01-03'
'2015-01-04'
'2015-01-05'
'2015-01-06'
'2015-01-07'
'2015-01-08'
'2015-01-09'
Star Strider
Star Strider le 1 Avr 2017
I had to create a cell array that resembled yours in order to get the addressing correct.
This works:
rawData = {'Date' 'Number'; '2015-01-01' 10; '2015-01-02' 5; '2015-01-03' 7};
dv = {rawData{2:end,1}};
dn = datenum(dv, 'yyyy-mm-dd');
[~,DayOfWeek] = weekday(dn,'long')

Connectez-vous pour commenter.

Catégories

En savoir plus sur Dates and Time dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by