Python Pandas :如何 select 数据帧的每行两列相等
Python Pandas : How to select two equal column per row of a dataframe
这是我的数据框 '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
并且我想要 select 具有相同 'group' 编号和相同 'match' 的行。所以结果看起来像这样:
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 中做到吗?
在 'group' 和 'match' 上执行 groupby
,然后在 'org_o' > 1 时执行 filter
:
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
这是我的数据框 '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
并且我想要 select 具有相同 'group' 编号和相同 'match' 的行。所以结果看起来像这样:
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 中做到吗?
在 'group' 和 'match' 上执行 groupby
,然后在 'org_o' > 1 时执行 filter
:
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