我想创建一个新的 DataFrame,其中包含与最后一列中的值 1.0 或 NaN 相对应的行,由此我只采用 1.0 以下的 Nans。但是,我也想考虑 Result 0.0 的行,只要最多有两个这样的时间戳(例如,在下面的简单示例中,我将采用时间戳为 00-00-30 和 00-00 的行-40)。
Timestamp Value Result
00-00-10 34567 1.0
00-00-20 45425
00-00-30 46773 0.0
00-00-40 64567
00-00-50 25665 1.0
00-01-00 25678
00-01-10 84358
00-01-20 76869 0.0
00-01-30 95830
00-01-40 87890
00-01-50 99537
00-02-00 85957 1.0
00-02-10 58840
我把它分成两个数据帧:
df_1 = data[((data['Result'].isnull()) & data['Result'].ffill() == 1) | data.Result == 1]
和
df_2 = data[((data['Result'].isnull()) & data['Result'].ffill() == 0) | data.Result == 0]
如何拆分df_2成块,使时间戳连续/不中断?(然后我可以检查每个块是否大于允许的长度,如果不是,则将其附加到df_1并根据时间对其进行排序。)
因此,我想要输出:
Timestamp Value Result
00-00-10 34567 1.0
00-00-20 45425
00-00-30 46773 0.0
00-00-40 64567
00-00-50 25665 1.0
00-01-00 25678
00-01-10 84358
00-02-00 85957 1.0
00-02-10 58840
慕盖茨4494581
蝴蝶刀刀
相关分类