2024-04-25 23:06:33 发布
网友
我在x列中有一个具有不同值的数据帧。我想删除列中只出现一次的值。在
x
所以这个:
x 1 10 2 30 3 30 4 40 5 40 6 50
应该变成这样:
我想知道有没有办法。在
您可以使用^{},然后使用^{}它:
In [9]: df = pd.DataFrame([10, 30, 30, 40, 40, 50], columns=['x']) df = df.groupby('x').filter(lambda x: len(x) > 1) df Out[9]: x 1 30 2 30 3 40 4 40
您可以通过使用^{}和^{}轻松获得:
In [1]: import pandas as pd In [2]: df = pd.DataFrame([10, 30, 30, 40, 40, 50], columns=['x']) In [3]: df = df[df.groupby('x').x.transform(len) > 1] In [4]: df Out[4]: x 1 30 2 30 3 40 4 40
如何更明确地保留所有重复的值:
df = df.loc[df.duplicated(subset='x', keep=False), :]
相反,要只保留唯一值:
还有这个:
df = df.loc[~df.duplicated(subset='x'), :]
相当于:
df = df.drop_duplicates(subset='x')
您可以使用^{} ,然后使用^{} 它:
您可以通过使用^{} 和^{} 轻松获得:
如何更明确地保留所有重复的值:
相反,要只保留唯一值:
^{pr2}$还有这个:
相当于:
相关问题 更多 >
编程相关推荐