【发布时间】:2020-03-03 02:14:46
【问题描述】:
我有一些随机的每小时时间序列数据,(让我们弥补一些)我如何为每日最大值重新采样以及为记录的每日最大值的小时创建一个单独的 df 列?
import pandas as pd
import numpy as np
from numpy.random import randint
import os
np.random.seed(10) # added for reproductibility
rng = pd.date_range('10/9/2018 00:00', periods=1000, freq='1H')
df = pd.DataFrame({'Random_Number':randint(1, 100, 1000)}, index=rng)
df.index.name = 'Date'
重新采样随机值:
daily_summary = pd.DataFrame()
daily_summary['Random_Number_Resamp'] = df['Random_Number'].resample('D').max()
daily_summary.head()
然后尝试记录每日最大值发生的小时数...
daily_summary['Hour_Map'] = daily_summary.Random_Number_Resamp.index.strftime('%H').astype('int')
daily_summary
上面的代码不会抛出属性错误,但是hour_map会是零。。当daily_summary df被创建时,hour_map也出现在这一步,我该如何完成?
【问题讨论】: