我有一个看起来像这样的DataFrame O(1)
输入:
O(m)
我想从“ col1”中删除在“ col2”中具有相同值的行。预期的输出看起来像...
输出:
m
这样做的过程是什么?
答案 0 :(得分:3)
使用此简短代码应该可以解决问题
df.drop_duplicates(subset=['col2'], keep=False)
说明
我们使用drop_duplicates
来(重复地)删除重复项,并根据您的请求将要删除的列设置为col2
,以便删除所有出现的内容(和例如,不保留每个重复项的第一次出现),我们使用keep=False
。
答案 1 :(得分:0)
这可以解决问题
from collections import Counter
df = pd.DataFrame({'col1': ["a","b","c","d","e"], 'col2': [1,3,3,2,6]})
c = Counter(df['col2'])
ls = [k for k,v in c.items() if v==1]
_fltr = df['col2'].isin(ls)
df.loc[_fltr,:]