假设两个熊猫系列都由列表组成(即该系列中的每一行都是一个列表),我想取2列的设置差。
例如,在数据仓库..。
pd.DataFrame({
'A': [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
'B': [[1, 2], [5, 6], [7, 8, 9]]
})
我想要创建一个新的列C
,即set(A) -set(B).
pd.DataFrame({
'C': [[3], [4], []]
})
发布于 2022-05-13 01:45:54
感谢:https://www.geeksforgeeks.org/python-difference-two-lists/
def Diff(li1, li2):
return list(set(li1) - set(li2)) + list(set(li2) - set(li1))
df['C'] = df.apply(lambda x: Diff(x['A'], x['B']), axis=1)
输出
A B C
0 [1, 2, 3] [1, 2] [3]
1 [4, 5, 6] [5, 6] [4]
2 [7, 8, 9] [7, 8, 9] []
https://stackoverflow.com/questions/72223453
复制相似问题