如何将列表与数据框列进行比较,如果元素在数据框列和列表之间匹配,如何从列表中删除元素?
How to compare list against column of dataframe, and remove elements from list if elements match between dataframe column and list?
我有一个看起来像这样的 df:
number
1
2
3
4
一个看起来像这样的列表:
lst = [1,2,3,4,5]
如何比较列表和数据框中的列,同时删除列表中与数据框中匹配的元素?
新列表为:
lst = [5]
要在dataframe中添加的列有很多重复的数字,所以如果它在列表和列中,只需要删除一次数字。
使用numpy.setdiff1d
或减去set
s:
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]
我有一个看起来像这样的 df:
number
1
2
3
4
一个看起来像这样的列表:
lst = [1,2,3,4,5]
如何比较列表和数据框中的列,同时删除列表中与数据框中匹配的元素?
新列表为:
lst = [5]
要在dataframe中添加的列有很多重复的数字,所以如果它在列表和列中,只需要删除一次数字。
使用numpy.setdiff1d
或减去set
s:
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]