gpt4 book ai didi

Python:如果两列没有出现在另一个 Pandas 列中,如何在 Pandas 中删除行?

转载 作者:行者123 更新时间:2023-11-28 22:17:22 25 4
gpt4 key购买 nike

我有两个数据帧 dfdf1df 包含人名和属性。

df  Name       Age
0 Jack 33
1 Anna 25
2 Emilie 49
3 Frank 19
4 John 42

df1包含两个人之间的联系次数信息。在 df1 中,我们可以有一些没有出现在 df 中的人。

df1    Name1    Name2   c
0 Frank Paul 2
1 Julia Anna 5
2 Frank John 1
3 Emilie Jack 3
4 Tom Steven 2
5 Tom Jack 5

我想删除 Name1df1 的所有行,或者 Name2 不出现在 df 中.

df1    Name1    Name2   c
0 Frank John 1
1 Emilie Jack 3

最佳答案

使用isin -

df1[df1[['Name1', 'Name2']].isin(df.Name).all(1)]

# Name1 Name2 c
#2 Frank John 1
#3 Emilie Jack 3

或者:

df1[df1.Name1.isin(df.Name) & df1.Name2.isin(df.Name)]

# Name1 Name2 c
#2 Frank John 1
#3 Emilie Jack 3

关于Python:如果两列没有出现在另一个 Pandas 列中,如何在 Pandas 中删除行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51466042/

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