【发布时间】:2018-08-14 13:47:59
【问题描述】:
假设我有两个数组x 和y,其中y 是x 的子集:
x = [1, 2, 3, 4, 5, 6, 7, 8, 9]
y = [3, 4, 7]
我想返回一个数组,如:
ret = [False, False, True, True, False, False, True, False, False]
如果y 只是一个数字,那将很容易(x == y),但我尝试了等效的x in y,但它不起作用。当然,我可以用 for 循环来做,但我宁愿有一个更简洁的方法。
我已经标记了这个 Pandas,因为 x 实际上是一个 Pandas 系列(数据框中的一列)。 y 是一个列表,但如果需要,可以将其设为 NumPy 数组或系列。
【问题讨论】:
-
ret = [num in y for num in x] -
自从你给 pandas 加了标签,我已经关闭了。
标签: python python-3.x pandas numpy