Python 列差异,包含列表

Python 列差异,包含列表,python,list,pandas,dataframe,Python,List,Pandas,Dataframe,我有一个数据框,其中列的值是列表,我想找到两列之间的差异,或者换句话说,我想找到a列中的所有元素,而B列中没有这些元素 data={'NAME':['JOHN','MARY','CHARLIE'], 'A':[[1,2,3],[2,3,4],[3,4,5]], 'B':[[2,3,4],[3,4,5],[4,5,6]]} df=pd.DataFrame(data) df=df[['NAME','A','B']] #I'm able to concatenate df['C']=df['

我有一个数据框,其中列的值是列表,我想找到两列之间的差异,或者换句话说,我想找到a列中的所有元素,而B列中没有这些元素

data={'NAME':['JOHN','MARY','CHARLIE'],
  'A':[[1,2,3],[2,3,4],[3,4,5]],
  'B':[[2,3,4],[3,4,5],[4,5,6]]}
df=pd.DataFrame(data)
df=df[['NAME','A','B']]

#I'm able to concatenate
df['C']=df['A']+df['B']

    NAME    A   B   C
  0 JOHN    [1, 2, 3]   [2, 3, 4]   [1, 2, 3, 2, 3, 4]
  1 MARY    [2, 3, 4]   [3, 4, 5]   [2, 3, 4, 3, 4, 5]
  2 CHARLIE [3, 4, 5]   [4, 5, 6]   [3, 4, 5, 4, 5, 6]
有没有办法找出不同之处

df['C']=df['A']-df['B']
我知道我们可以使用
df。将
应用于函数,但逐行处理将运行缓慢,因为我有大约4000k行。我在寻找一种直截了当的方法,比如

df['C']=df['A']+df['B']
对于固定的差异

df['A'].map(set) - df['B'].map(set)
对于固定的差异

df['A'].map(set) - df['B'].map(set)

你到底想要什么作为“区别”
df['A'].map(set)-df['B'].map(set)
会给set带来差异。这正是我想要的!你能补充一下吗?我在试df['D']=set(df['A'])-set(df['B']),我的坏!正在为上面的示例工作,但当我应用于大型数据集时抛出内存错误!你到底想要什么作为“区别”<代码>df['A'].map(set)-df['B'].map(set)
将产生一个设置差异。这正是我所要寻找的!你能补充一下吗?我在试df['D']=set(df['A'])-set(df['B']),我的坏!正在为上面的示例工作,但当我应用于大型数据集时抛出内存错误!