python - Pandas 不删除重复项

标签 python pandas

在以下脚本中

import pandas as pd

def start():
    df_dict = {"A": [1,2,3,3,4], "B": [1,2,2,3,4]}
    df = pd.DataFrame(df_dict)

    df.drop_duplicates(inplace = True, keep = "last")

    print(df)

if __name__ == "__main__":
    start()
df 中的重复项不会被移除。可能是什么原因
电流输出:
   A  B
0  1  1
1  2  2
2  3  2
3  3  3
4  4  4
预期输出:
   A  B
0  1  1
1  2  2
3  3  3
4  4  4

最佳答案

.drop_duplicates()方法查看数据框所有列的重复行,因此您需要使用 .drop_duplicates()同时对两列中的每一列进行子集化,然后得到这两个子集数据帧的交集(内部合并)。与其打印结果数据帧,不如让您的函数返回数据帧可能更符合您的兴趣。

import pandas as pd

def start():
    df_dict = {"A": [1,2,3,3,4], "B": [1,2,2,3,4]}
    df = pd.DataFrame(df_dict)

    # drop duplicates within each column
    df1 = df.drop_duplicates(subset='A', keep='last')
    df2 = df.drop_duplicates(subset='B', keep='last')

    return pd.merge(df1,df2,how='inner')

if __name__ == "__main__":
    result = start() 

输出:
>>> result
   A  B
0  1  1
1  3  3
2  4  4

关于python - Pandas 不删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63237616/

相关文章:

Python Tkinter : obtain tree node information

python - 阶乘非零数字不匹配

python - 如何映射 pandas 中的列值?

python - 获取 Pandas DataFrame 中每行的非零值计数

python - Pandas:将数据框写入 Excel (.xls) 文件问题

python - 如何在 QTableWidget 中使特定单元格可编辑并保留其余单元格不可编辑?

python - 导入错误: cannot import name 'OrderDetailView' from 'core.api.views' in Django and ReactJs

python - 优化比较 DataFrame 的 Pandas 函数

python - 开始在 python 上录制之前的语音识别流延迟

用于提取日期和时间的 Python 字符串解析