我有一个如下所示的df:
number
1
2
3
4
看起来像这样的列表:
lst = [1,2,3,4,5]
在删除列表中与数据框中匹配的元素时,如何比较列表和数据框中的列?
新列表为:
lst = [5]
要在datafrrame中添加该列,有许多重复的数字,因此,如果列表和列中都有该数字,则只需删除一次。
答案 0 :(得分:3)
使用numpy.setdiff1d
或减去set
:
df = pd.DataFrame([1,2,3,4],columns=['number'])
print (df)
lst = [1,2,3,4,5]
L = np.setdiff1d(lst, df['number'])
print (L)
[5]
或者:
L = list(set(lst) - set(df['number']))
print (L)
[5]