| 数据1|数据2|数据3|数据4|
| - ------|- ------|- ------|- ------|
| 八十八|二十二|四十四|1个|
| 楠|楠|楠|五个|
| 五一七|楠|楠|楠|
| 楠|楠|楠|楠|
| 楠|-33岁|楠|楠|
| 楠|楠|八个|楠|
| 楠|楠|楠|无|
我有上面的 Dataframe df我正在执行向前填充,但是如果data 4 ==5,我想删除所有行,直到data 4的值改变,如果我填充并过滤掉data 4!=5,那么我最终会在data 4 ==0的行中得到像517这样的值,这是我不想要的。下面的代码将删除包含5的行,但如果另一列包含值而data 4为5,则不会删除
filtereddf = df[df.data4 !=5]
我希望结果是:
| 数据1|数据2|数据3|数据4|
| - ------|- ------|- ------|- ------|
| 八十八|二十二|四十四|1个|
| 八十八|二十二|四十四|无|
3条答案
按热度按时间t1rydlwq1#
你可以试试
产出
qc6wkl3g2#
尝试先填充data4,然后删除data4为5的行:
lc8prwob3#
您可以先填充特定的列数据4。
| | 数据1|数据2|数据3|数据4|
| - ------|- ------|- ------|- ------|- ------|
| 无|八十八岁|二十二岁|四十四岁|1.0分|
| 1个|钠氮|钠氮|钠氮|5.0版|
| 第二章|小行星517.0|钠氮|钠氮|5.0版|
| 三个|钠氮|钠氮|钠氮|5.0版|
| 四个|钠氮|-33.0|钠氮|5.0版|
| 五个|钠氮|钠氮|8.0分|5.0版|
| 六个|钠氮|钠氮|钠氮|0.0分|
筛选data 4不为5的地方,然后填充所有列。
| | 数据1|数据2|数据3|数据4|
| - ------|- ------|- ------|- ------|- ------|
| 无|八十八岁|二十二岁|四十四岁|1.0分|
| 六个|八十八岁|二十二岁|四十四岁|0.0分|