numpy求两个数组交集
时间: 2023-09-04 14:10:56 浏览: 304
可以使用numpy库的intersect1d方法来求两个数组的交集。
例如,假设有两个数组a和b:
```python
import numpy as np
a = np.array([1, 2, 3, 4, 5])
b = np.array([3, 4, 5, 6, 7])
```
可以使用intersect1d方法来求a和b的交集:
```python
c = np.intersect1d(a, b)
print(c)
```
输出结果为:
```
[3 4 5]
```
其中,c即为a和b的交集数组。
相关问题
numpy二维数组交集
你可以使用numpy库中的intersect1d函数来计算两个一维数组的交集,然后通过reshape函数将一维数组转换为二维数组。下面是一个示例代码:
```python
import numpy as np
# 定义两个二维数组
a = np.array([[1, 2], [3, 4], [5, 6]])
b = np.array([[2, 3], [4, 5], [6, 7]])
# 将二维数组转换为一维数组,计算交集
c = np.intersect1d(a.reshape(-1), b.reshape(-1))
# 将一维数组转换为二维数组
result = c.reshape(-1, 2)
print(result)
```
输出结果为:
```
[[2 3]
[4 5]
[6 6]]
```
注意,这里的交集是按照元素值来计算的,如果需要按照行或列来计算交集,可以使用numpy库中的intersect2d函数。
提取两个numpy数组的交集
可以使用numpy中的intersect1d函数来提取两个numpy数组的交集。
示例代码:
```python
import numpy as np
a = np.array([1, 2, 3, 4, 5])
b = np.array([3, 4, 5, 6, 7])
intersect = np.intersect1d(a, b)
print(intersect) # 输出 [3 4 5]
```
在上面的代码中,我们首先定义了两个numpy数组a和b,然后使用intersect1d函数来获取它们的交集。最后,我们将交集打印出来。
阅读全文