Python Pandas:如何在数据帧的每行中选择两个相等的列
Posted
技术标签:
【中文标题】Python Pandas:如何在数据帧的每行中选择两个相等的列【英文标题】:Python Pandas : How to select two equal column per row of a dataframe 【发布时间】:2015-06-29 21:16:34 【问题描述】:这是我的数据框“dfm”:
match org_o group
012 012 Smile Communications 92
012 012 Smile 92
10types 10TYPES 93
10types 10types.com 93
360works 360WORKS 94
360works 360works.com 94
400 IBM AS/400 Division 36
6c f3f IBM Internal US Division 36
我想选择具有相同“组”编号以及相同“匹配”的行。所以结果应该是这样的:
match org_o group
012 012 Smile Communications 92
012 012 Smile 92
10types 10TYPES 93
10types 10types.com 93
360works 360WORKS 94
360works 360works.com 94
有人知道我如何在 python pandas 中做到这一点吗?
【问题讨论】:
【参考方案1】:在“组”和“匹配”上执行groupby
,然后在“org_o”的计数上执行filter
> 1:
In [245]:
df.groupby(['group', 'match']).filter(lambda x: x['org_o'].count() > 1)
Out[245]:
match org_o group
0 012 012 Smile Communications 92
1 012 012 Smile 92
2 10types 10TYPES 93
3 10types 10types.com 93
4 360works 360WORKS 94
5 360works 360works.com 94
【讨论】:
以上是关于Python Pandas:如何在数据帧的每行中选择两个相等的列的主要内容,如果未能解决你的问题,请参考以下文章
Python_Executing 来自 Pandas 数据帧的所有值的特定行
python pandas:仅将数据帧的结构(无行)导出到 SQL