我有一个数据帧df = pd.DataFrame({'col1': [.8,.9,1,1,1,.9,.7,.9,1,1,.8,.8,.9]})
,它看起来像
col1
0 0.8
1 0.9
2 1.0
3 1.0
4 1.0
5 0.9
6 0.7
7 0.9
8 1.0
9 1.0
10 0.8
11 0.8
12 0.9
一旦1位于col1
中,我希望代码删除下面的三个数字。它应该去掉三个,然后看看下面是否有1。输出应该像
col1
0 0.8
1 0.9
2 1.0
6 0.7
7 0.9
8 1.0
12 0.9
我先前问了一个问题,答案是
integers = np.r_[: df.twofour.eq(1).idxmax() + 1,
range(df.twofour.eq(1).idxmax() + 30, len(df))
]
df = df.iloc[integers]
这段代码可以删除1的第一个目的,我可以为所有未删除的1扩展这段代码吗?还有更优雅的方法吗
您只需迭代数据帧并获取所有要删除的索引:
输出:
相关问题 更多 >
编程相关推荐