我想显示列中任何值的所有行 - "网站"发生不止一次。例如 - 如果某个网站" xyz.com"不止一次出现,然后我想显示所有这些行。我使用以下代码 -
df[df.website.isin(df.groupby('website').website.count() > 1)]
上面的代码返回零行。但我实际上可以看到有这么多网站通过运行以下代码而不止一次出现 -
df.website.value_counts()
如何修改第一行代码以显示所有这些行?
答案 0 :(得分:6)
将duplicated
与subset='website'
和keep=False
:
df[df.duplicated(subset='website', keep=False)]
示例输入:
col1 website
0 A abc.com
1 B abc.com
2 C abc.com
3 D abc.net
4 E xyz.com
5 F foo.bar
6 G xyz.com
7 H foo.baz
示例输出:
col1 website
0 A abc.com
1 B abc.com
2 C abc.com
4 E xyz.com
6 G xyz.com