对于给定的时间序列数据,可以重新指定数据的采集频率,即修改前面创建时间序列时讲的时长增量,并重新聚合修改后时长范围内的数据。[大谦MATLAB,dqmatlab点com]
【MATLAB】
MATLAB中使用retime函数对给定时间表进行重采样。下面读取给定文件中的时间序列数据到时间表TT。该数据是每隔1小时测量1个值,如图11-1所示,所以一天有24个值。
code.matlab
>> TT=readtimetable('D:\Samples\ch11\时间序列.xlsx',VariableNamingRule='preserve',RowTimes='时间');
用retime函数将数据采集频率改为按天,并计算当天所有测量值的平均值。
code.matlab
>> TT1=retime(TT,'daily','mean')
TT1 =
5×1 timetable
时间 测量值
__________ ______
2022-03-18 5.5417
2022-03-19 4.4167
2022-03-20 6.0833
2022-03-21 4.9583
2022-03-22 7.5
【Python】
Python中使用pandas包中DataFrame对象的resample方法对数据进行重采样。计算当天所有测量值的均值。
code.python
>>> import pandas as pd
>>> df=pd.read_excel(r'F:\01 MATLAB+Python双语对照学习\Samples\ch11\时间序列.xlsx', sheet_name=0, index_col=0, engine='openpyxl')
>>> df_dayly=df.resample('D').mean()
>>> df_dayly
测量值
时间
2022-03-18 5.541667
2022-03-19 4.416667
2022-03-20 6.083333
2022-03-21 4.958333
2022-03-22 7.500000