我在 pandas 中有两个系列 s1
和 s2
并且想要计算交集,即该系列的所有值都是公共(public)的。
我将如何使用 concat
函数来执行此操作?我一直在尝试解决,但一直无法解决(我不想计算 s1
和 s2
索引的交集,而是计算值) .
最佳答案
将这两个系列放在 Python 的 set container 中然后使用集合交集方法:
s1.intersection(s2)
然后根据需要转换回列表。
刚刚注意到标签中有 Pandas 。可以翻译回那个:
pd.Series(list(set(s1).intersection(set(s2))))
根据评论,我已将其更改为更 Pythonic 的表达式,更短且更易于阅读:
Series(list(set(s1) & set(s2)))
应该可以解决问题,除非索引数据对您也很重要。
在转到 pd.Series 之前添加了 list(...)
来翻译集合,因为 pandas 不接受集合作为系列的直接输入。
关于python - 在 Pandas 中找到两个系列之间的交集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18079563/