Intersection 如何在python中从两个系列中获得元素级交集

Intersection 如何在python中从两个系列中获得元素级交集,intersection,series,elementwise-operations,Intersection,Series,Elementwise Operations,我的问题是关于大熊猫的。 我有两个系列,每个系列都有如下字符串元素: 为了简化,我在DataFrame中连接了两个系列 import pandas as pd import numpy as np my_df = pd.DataFrame([['ab', 'bz', 'b'], ['cd', 'ct', 'c'], ['ef', 'ka', np.nan]], columns=['sr_1', 'sr_2', 'intersection']) 有什么想法吗?这就是你可以做的: import

我的问题是关于大熊猫的。 我有两个系列,每个系列都有如下字符串元素: 为了简化,我在DataFrame中连接了两个系列

import pandas as pd
import numpy as np
my_df = pd.DataFrame([['ab', 'bz', 'b'], ['cd', 'ct', 'c'], ['ef', 'ka', np.nan]], columns=['sr_1', 'sr_2', 'intersection'])


有什么想法吗?

这就是你可以做的:

import pandas as pd
import numpy as np

df1 = pd.DataFrame({'sr1' : ['ab','cd','ef'] ,
                    'sr2' : ['bz','ct','ka',]})

df1['intersection'] = df1.apply(lambda x: set(x.sr1) & set(x.sr2), axis=1)

df1['intersection'] = df1.intersection.apply(lambda x: list(x)[0] if len(x)>0 else np.nan)
输出: