3.如何获取数组a = np.array([1,2,3,2,3,4,3,4,5,6])和数组b = np.array([7,2,10,2,7,4,9,4,9,8])之间的共同元素(可参考np.unique()函数)?
时间: 2023-08-19 21:22:45 浏览: 421
你好!关于你的问题,可以使用np.intersect1d()函数获取两个数组之间的共同元素。代码如下:
```python
import numpy as np
a = np.array([1,2,3,2,3,4,3,4,5,6])
b = np.array([7,2,10,2,7,4,9,4,9,8])
result = np.intersect1d(a, b)
print(result)
```
输出结果为:
```
[2 4]
```
这里我们得到了两个数组之间的共同元素,即2和4。如果想要去重后得到共同元素,可以使用np.unique()函数。代码如下:
```python
import numpy as np
a = np.array([1,2,3,2,3,4,3,4,5,6])
b = np.array([7,2,10,2,7,4,9,4,9,8])
result = np.intersect1d(np.unique(a), np.unique(b))
print(result)
```
输出结果为:
```
[2 4]
```
这里我们先使用np.unique()函数去重后再使用np.intersect1d()函数获取共同元素。
相关问题
15. 获取数组a = np.array([1,2,3,2,3,4,3,4,5,6])和数组b = np.array([7,2,10,2,7,4,9,4,9,8])之间的共同元素
可以使用NumPy中的intersect1d函数来获取两个数组之间的共同元素。intersect1d函数返回一个有序唯一值数组,这个数组包含在两个输入数组中都出现的所有元素。
以下是使用NumPy的intersect1d函数来获取数组a和数组b之间的共同元素的代码:
```python
import numpy as np
# 创建数组a和数组b
a = np.array([1,2,3,2,3,4,3,4,5,6])
b = np.array([7,2,10,2,7,4,9,4,9,8])
# 获取a和b之间的共同元素
common_elements = np.intersect1d(a, b)
print(common_elements)
```
执行上述代码,输出结果如下:
```
[2 4]
```
以上就是获取数组a和数组b之间的共同元素的方法。
10. 获取数组a = np.array([1,2,3,2,3,4,3,4,5,6])和数组b = np.array([7,2,10,2,7,4,9,4,9,8])元素相匹配的位置
可以使用 numpy 的 `where` 函数来获取数组中元素相匹配的位置,具体代码如下:
```python
import numpy as np
a = np.array([1, 2, 3, 2, 3, 4, 3, 4, 5, 6])
b = np.array([7, 2, 10, 2, 7, 4, 9, 4, 9, 8])
idx = np.where(a == b) # 获取元素相匹配的位置
print(idx)
```
输出结果为:
```
(array([1, 3, 5, 7]),)
```
其中,`np.where(a == b)` 表示获取数组 `a` 中与数组 `b` 相匹配的位置,返回结果是一个元组,其中第一个元素是一个一维数组,表示匹配的位置。由于这里只有一个匹配结果,因此元组中只有一个元素。
阅读全文