【问题标题】:Join two pandas series by values [duplicate]按值加入两个熊猫系列[重复]
【发布时间】:2016-04-23 10:55:55
【问题描述】:

我有两个非常大的系列,只包含连接键。在不使用索引的情况下(在这种情况下毫无意义),我想以最有效的方式通过值将一个系列连接到另一个系列。

现在,我添加一列 1,以便我可以将 pd.merge 与左连接一起使用,这样我就可以确定 left 中的每个键是否也存在于右侧。

我确信我可以在不创建两个未使用的列的情况下执行此操作,但 pd.concat 似乎想要使用索引进行连接。 有没有办法在值上留下两个系列,是否有更快的 numpy 版本?

例如:

a = pd.Series([1,2,3])
b = pd.Series([1,3,6])

我想返回一个数组或系列,告诉我a 中的每个值是否以最有效的方式在 b 中。

 [True, False, True]

【问题讨论】:

  • 可以加样吗?
  • 示例值向上。

标签: python numpy pandas merge


【解决方案1】:

你可以试试:

c = a.isin(b)

返回:

0     True
1    False
2     True
dtype: bool

或者如果你想要一个数组,你可以:

c.values

返回:

array([ True, False,  True], dtype=bool)

【讨论】:

  • 不错!这个规模好吗?我有两个 20MM 唱片系列...
猜你喜欢
  • 2015-04-18
  • 2021-12-18
  • 2018-11-03
  • 2014-10-20
  • 2021-11-14
  • 2013-08-07
  • 2021-09-02
  • 2019-02-05
  • 2019-05-27
相关资源
最近更新 更多