gpt4 book ai didi

python - 如何删除在部分列上具有重复值的行?

转载 作者:太空宇宙 更新时间:2023-11-04 09:26:47 25 4
gpt4 key购买 nike

我正在创建将 xlsx 文件读取到 pandas 数据框并向其附加新行的脚本。但是,我的问题是我不想在前四列(总共包含 5 列)中添加具有相同值的重复项。第五列的值可以是任何值,但基于对这四列的重复,我想删除整行。

除此之外,我的代码功能齐全。我可以通过循环数据帧来做到这一点,但我相信有更聪明的方法来做到这一点。

下面的数据示例。当最后一行与第 4 行有相同的四列但第 5 列不同时,如何删除最后一行?

    Category Year Week Price Amount
0 1 2019 27 2 1
1 1 2019 28 3 2
2 1 2019 29 4 3
3 2 2019 29 4 4
4 3 2019 30 5 3
5 3 2019 30 5 4

部分代码:

# Append new rows to dataframe
file_df = file_df.append(new_rows, sort=False, ignore_index=True)

# Delete dublicate rows
combined_df = combined_df.drop_duplicates()

此代码现在仅删除列值完全相同的行。无论如何,我找不到删除此类重复项的智能解决方案。如果问题不相关,请纠正我。

最佳答案

尝试 pd.drop_duplicates并设置要比较值的 subset

df.drop_duplicates(subset=['Category' ,'Year', 'Week' ,'Price'],inplace=True)

关于python - 如何删除在部分列上具有重复值的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57286965/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com