python - 有没有一种方法可以根据特定值过滤数据框,同时使用 Pandas 保留唯一标识符的所有其他值?

标签 python pandas dataframe merge concatenation

我的意思是假设我们有以下数据框:

UID  A  
1    Yes  
1    No  
2    No  
2    No  
3    Yes  
3    No  
4    Yes  
4    Yes  

我想生成一个数据框,其中包含任何具有"is"的 UID,甚至 UID 的其他实例都是“否”。

UID  A  
1    Yes  
1    No  
3    Yes  
3    No  
4    Yes  
4    Yes  

有没有办法在 python 中使用 Pandas 或任何其他库来做到这一点?

最佳答案

尝试使用 isin

df = df.loc[df.UID.isin(df.loc[df.A=='Yes','UID'])]
df
Out[323]: 
   UID    A
0    1  Yes
1    1   No
4    3  Yes
5    3   No
6    4  Yes
7    4  Yes

关于python - 有没有一种方法可以根据特定值过滤数据框,同时使用 Pandas 保留唯一标识符的所有其他值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65010276/

相关文章:

python - 这个网络摄像头面部检测有什么问题?

python - 按行值比较数据帧列并选择具有匹配模式的列

R:将计算列添加到数据框列表中

python - 如果函数返回字典数组,如何构造与 UDF 一起使用的模式

python - 将数据分箱到基于非网格的箱中

python - 如何在不使用给定 python 的情况下使用 Anaconda 提供的脚本?

Python 中类似 PHP 的数组处理 : Indexing multidimensional array

python - Pandas - 日期时间索引的前 X 小时的总和

Python pandas 夹板字符串,添加行,每列不同

R:如何将移动平均值应用于数据框中的列子集?