如何基于出现次数最少的列值删除行

2024-06-07 17:32:10 发布

您现在位置:Python中文网/ 问答频道 /正文

删除列中出现的行为1的步骤
数据集:

t={'name':['max','max','colin','roman','roman']}
df=pd.DataFrame(t)

预期产出应为:

t={'name':['max','max','roman','roman']}
df=pd.DataFrame(t)

你能调查一下吗


Tags: 数据namedataframedf步骤maxpdroman
2条回答

这里有一个使用value_counts的解决方案:

A = df['name'].value_counts()
df[df['name'].isin(A[A > 1].index)]

您可以使用groupby和filter:

df.groupby('name').filter(lambda x:len(x)>1)

输出:

    name
0   max
1   max
3   roman
4   roman

如果需要使用value_counts()

cnt = df['name'].value_counts()
df[df['name'].isin(cnt[cnt>1].index)]

相关问题 更多 >

    热门问题