【发布时间】:2019-05-31 19:56:56
【问题描述】:
我正在尝试查找列表和列表列表之间的交集。这可以通过一个简单的 for 循环轻松解决:
def find_intersec(x,y):
result = []
for i in range(len(y)):
if set(x).intersection(set(y[i])):
result.append(y[i])
return(result)
x = [1,2,3,4,5,6]
y = [[1,2,3], [4,5,6], [9,10,11]]
find_intersec(x,y)
如何将上述内容更改为 numpy 矢量化解决方案?我试过numpy.intersect1d() 没有成功。
【问题讨论】:
-
我们能否假设
y在所有内部列表中具有相同数量的元素,即发布示例中的3? -
不,
y在内部列表中具有可变数量的元素。
标签: python numpy vectorization