How to divide timeseries data into seasonal variation
Ältere Kommentare anzeigen
This is the first instant of my data.
DateTime Global_active_power Global_reactive_power Voltage Global_intensity Sub_metering_1 Sub_metering_2 Sub_metering_3
1/01/2007 0:00 2.58 0.136 241.97 10.6 0 0 0
I want to divide it into summe and winter data.
2 Kommentare
Guillaume
am 8 Sep. 2019
What is your definition of summer and winter (when do they start and end)?
Niraj Acharya
am 8 Sep. 2019
Bearbeitet: Niraj Acharya
am 8 Sep. 2019
Antworten (1)
Guillaume
am 9 Sep. 2019
Note that if you're indeed using timeseries, you may be better off using timetables instead. They're slightly easier to use and are more powerful.
The following applies to timetables, I believe it's more or less the same syntax for timeseries.
While you can indeed split the data into winter and summer (and discard the rest):
summer = yourtimetable(ismember(month(yourtimetable.DateTime), 6:8), :); %6 to 8 is June, July, August
winter = yourtimetable(ismember(month(yourtimetable.DateTime), [1, 2, 12]), :); %1, 2, 12 is January, February, December
you may be better off adding a new variable named Season of type categorical:
yourtimetable.Season = discretize(mod(month(yourtimetable.DateTime), 12), 0:3:12, 'categorical', {'winter', 'spring', 'summer', 'autumn'}); %the mod is to bring december as first month
Kategorien
Mehr zu Time Series Events finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!