我有一个pandas数据帧,我想检查每一行,如果它在特定列上具有相同的值(让我们称之为porduct_type),如果是,则删除它。换句话说,在特定列中具有相同值的一组连续行中,我只想保留一行。
示例,如果列A是我们不希望连续重复的列:
input =
A B
0 1 1
0 2 2
2 1 10
2 2 20
0 11 100
5 2 200
output =
A B
0 1 1
2 1 10
0 11 100
5 2 200
答案 0 :(得分:4)
这有点棘手,但你可以做点像
>>> df.groupby((df["A"] != df["A"].shift()).cumsum().values).first()
A B C
1 0 1 1
2 2 1 10
3 0 11 100
4 5 2 200