gpt4 book ai didi

python - 如何只保留 pandas DataFrame 中具有多个值的行?

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

我经常尝试执行以下操作,但有一个在 pandas 中最有效的即时解决方案:

我有以下示例 pandas DataFrame,其中有两列,NameAge:

import pandas as pd

data = [['Alex',10],['Bob',12],['Barbara',25], ['Bob',72], ['Clarke',13], ['Clarke',13], ['Destiny', 45]]

df = pd.DataFrame(data,columns=['Name','Age'], dtype=float)

print(df)
Name Age
0 Alex 10.0
1 Bob 12.0
2 Barbara 25.0
3 Bob 72.0
4 Clarke 13.0
5 Clarke 13.0
6 Destiny 45.0

我想删除在 Name 中具有匹配值的所有行。在示例 df 中,有两个 Bob 值和两个 Clarke 值。因此,预期的输出将是:

      Name   Age
0 Bob 12.0
1 Bob 72.0
2 Clarke 13.0
3 Clarke 13.0

因此我假设有一个重置索引。

一个选项是将 Name 的所有唯一值保存在一个列表中,然后遍历数据框以检查重复行。那将是非常低效的。

这个任务有内置函数吗?

最佳答案

使用复制

df[df.Name.duplicated(keep=False)]
Name Age
1 Bob 12.0
3 Bob 72.0
4 Clarke 13.0
5 Clarke 13.0

关于python - 如何只保留 pandas DataFrame 中具有多个值的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53734634/

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