我有两个数据帧,每个数据帧都有日期时间索引。其中一个数据集的时间分辨率为 12.33 分钟,此处df1
为 ,另一个数据集的时间分辨率为 1 秒,此处称为df2
:
np.random.seed(seed=1111)
data = np.random.randint(1, high=100, size=len(minutes))
data_1 = np.random.randint(1, high=100, size=len(seconds))
Channel_1=data*0.1
Channel_2=data
Channel_1_1=data_1*10
Channel_1_2=data_1*100
df1 = pd.DataFrame({'Datetime': minutes, 'Channel 1': Channel_1, 'Channel 2': Channel_2})
df1 = df1.set_index('Datetime')
df2 = pd.DataFrame({'Datetime': seconds, 'Channel 1': Channel_1_1, 'Channel 2': Channel_1_2})
df2 = df2.set_index('Datetime')
我现在想合并这些数据帧,以便它们共享相同的时间分辨率。本质上,我想重新采样df2
(理想情况下使用mean()
),然后将其放在新的数据框中,与来自df1
具有相同日期时间索引的数据一起df1
(即,使来自的第一个值是和df2
之间的平均值)。知道是否可以根据和之间的中点进行平均也很有趣。我一直在玩,但我似乎无法找到有效的解决方案。df1.index[0]
df1.index[[1]]
df1.index[0]
df1.index[[1]]
resample
reindex
pd.merge_asof