gpt4 book ai didi

python - 如何根据特定列中的出现次数从不包括行的 Dataframe 创建新的 DataFrame?

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

我有以下数据框:

     foo  bar
0 Alice 42
1 Alice 44
2 Bob 22

我正在尝试获取不包括最后一行的新数据框,因为 Bobfoo 列中仅出现一次

     foo  bar
0 Alice 42
1 Alice 44

这是我用来创建上面看到的数据框的代码:

df = pd.DataFrame(
{
"foo": ["Alice", "Alice", "Bob"],
"bar": [42, 44, 22]
}
)

以及我对这个要求的处理方法(这是行不通的..)

col_foo_gt_1 = df["foo"].value_counts() > 1
print(col_foo_gt_1["Alice"]) # Prints true
print(col_foo_gt_1["Bob"]) # Prints false

df_bob_removed = pd.DataFrame(
df[col_foo_gt_1[df["foo"]]]
)

我得到的错误是:

ValueError: cannot reindex from a duplicate axis

最佳答案

这是另一个使用 .transform 的解决方案:

df_bob_removed = df.loc[
df.groupby('foo')['foo'].transform('count') > 1,
]

foo bar
0 Alice 42
1 Alice 44

关于python - 如何根据特定列中的出现次数从不包括行的 Dataframe 创建新的 DataFrame?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51001582/

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