我正在处理df具有以下结构的数据框:
start_time end_time key vol
0 2018-08-23 00:00:00 2018-08-23 01:30:00 abcd_eg 0.92
1 2018-08-23 00:15:00 2018-08-23 01:45:00 defg_x2 0.27
我正在尝试在开始时间和结束时间之间生成 15 分钟的间隔。我希望在同一数据帧(或新数据帧)中生成新行,如下所示:
start_time end_time key vol
0 2018-08-23 00:00:00 2018-08-23 01:30:00 abcd_eg 0.92
1 2018-08-23 00:15:00 2018-08-23 01:30:00 abcd_eg 0.92
2 2018-08-23 00:30:00 2018-08-23 01:30:00 abcd_eg 0.92
3 2018-08-23 00:45:00 2018-08-23 01:30:00 abcd_eg 0.92
4 2018-08-23 01:00:00 2018-08-23 01:30:00 abcd_eg 0.92
5 2018-08-23 01:15:00 2018-08-23 01:30:00 abcd_eg 0.92
6 2018-08-23 01:30:00 2018-08-23 01:30:00 abcd_eg 0.92
7 2018-08-23 00:15:00 2018-08-23 01:45:00 defg_x2 0.27
8 2018-08-23 00:30:00 2018-08-23 01:45:00 defg_x2 0.27
9 2018-08-23 00:45:00 2018-08-23 01:45:00 defg_x2 0.27
10 2018-08-23 01:00:00 2018-08-23 01:45:00 defg_x2 0.27
11 2018-08-23 01:15:00 2018-08-23 01:45:00 defg_x2 0.27
12 2018-08-23 01:30:00 2018-08-23 01:45:00 defg_x2 0.27
13 2018-08-23 01:45:00 2018-08-23 01:45:00 defg_x2 0.27
日期列是 type datetime[64], key 是objectvol 是float。我到目前为止尝试的是:
b=[]
lst = []
for i, row in df.iterrows():
b = pd.date_range(start=row.start_time, end=row.end_time, freq='15min',closed=None)
lst.append(b)
使用.iterrows()因为我有大约 125 条记录。这为我提供DatetimeIndex了数据框中所有开始时间和结束时间值的时间序列,间隔为 15 分钟。
在此之后,我尝试在数据框中作为lst新列传递,如下所示:unpackdf
df['unpack'] = lst
我的想法是,如果我可以将这些值作为 df 中的新列,我可以使用此解决方案将它们提取为行。但是这个过程是行不通的。
我怎么能用熊猫做到这一点?
宝慕林4294392
慕的地8271018
相关分类