输入
输出
我正在编辑它以尝试更好地解释。我有一个包含两列的数据框(我们称之为 A 和 B)。 B 列有一个从 0 到 8 的数字,但通常会随着数据帧的每个条目连续重复。例如0, 0, 0, 2, 2, 2, 8, 8, 6, 6. 在这个例子中,我想删除大部分行,以便 B 列只读取 0, 2, 8, 6。
我以为我可以使用 drop_duplicates。但是,由于所有行都包含 0-8 之间的数字,因此它们都是重复的,因此所有行都将被删除。我希望这次我解释得更好。
答案 0 :(得分:1)
试试这个:
df = df[df[1]!=df.shift(-1)[1]]
这将保留第二列中的值与前一行中的值不同的所有行。或者换句话说,它将删除第二列中与前一行具有相同值的所有行
答案 1 :(得分:0)
如果我理解正确,您只想使用 unique
newColA = df['colA'].unique()
newColB = df['colB'].unique()
new_df = pd.DataFrame([newColA, newColB]).T
有更好的解决方案,但我猜您正在寻找易于理解的东西;)