用Python编写程序以对给定的时间序列数据进行重新采样并找到最大月末频率
假设您有时间序列和最大月末频率的结果,
DataFrame is:
Id time_series
0 1 2020-01-05
1 2 2020-01-12
2 3 2020-01-19
3 4 2020-01-26
4 5 2020-02-02
5 6 2020-02-09
6 7 2020-02-16
7 8 2020-02-23
8 9 2020-03-01
9 10 2020-03-08
Maximummonthendfrequency:
Id time_series
time_series
2020-01-31 4 2020-01-26
2020-02-29 8 2020-02-23
2020-03-31 10 2020-03-08解决方案
为了解决这个问题,我们将遵循以下步骤-
用一列定义一个数据框,
d = {'Id': [1,2,3,4,5,6,7,8,9,10]}
df = pd.DataFrame(d)在start='01/01/2020'内创建date_range函数,期间=10,并分配freq='W'。从给定的开始日期到下一个每周的开始日期,它将生成十个日期,并将其存储为df['time_series']。
df['time_series'] = pd.date_range('01/01/2020', periods=10, freq='W')应用重采样方法以找到最大月末频率,
df.resample('M', on='time_series').max())例子
让我们看一下下面的实现以获得更好的理解-
import pandas as pd
d = {'Id': [1,2,3,4,5,6,7,8,9,10]}
df = pd.DataFrame(d)
df['time_series'] = pd.date_range('01/01/2020',
periods=10,
freq='W')
print("DataFrame is:\n",df)
print("Maximummonthendfrequency: ")
print(df.resample('M', on='time_series').max())输出
DataFrame is:
Id time_series
0 1 2020-01-05
1 2 2020-01-12
2 3 2020-01-19
3 4 2020-01-26
4 5 2020-02-02
5 6 2020-02-09
6 7 2020-02-16
7 8 2020-02-23
8 9 2020-03-01
9 10 2020-03-08
Maximummonthendfrequency:
Id time_series
time_series
2020-01-31 4 2020-01-26
2020-02-29 8 2020-02-23
2020-03-31 10 2020-03-08热门推荐
10 香港老妈结婚祝福语简短
11 毕业立体贺卡祝福语简短
12 简短新年年会祝福语
13 评论小品祝福语大全简短
14 恭喜师兄结婚祝福语简短
15 员工集体辞职祝福语简短
16 高中新生祝福语 简短
17 装修祝福语男生搞笑简短
18 生日开业蛋糕祝福语简短