[2181 2178 2178 2177 2174 2172 2179 2174 2182 2183]用python对上面矩阵数组完成以下任务:1,找出出现次数最多的前三位数字2,对前三位数字与出现次数最多的前三位数字相同的数据求均值
时间: 2023-05-21 12:02:24 浏览: 110
给定一个整数数组,其中元素的取值范围为0到10000,求其中出现次数最多的数
5星 · 资源好评率100%
1. 找出出现次数最多的前三位数字:
```python
import numpy as np
arr = np.array([2181, 2178, 2178, 2177, 2174, 2172, 2179, 2174, 2182, 2183])
# 统计每个数字出现的次数
counts = np.bincount(arr)
# 找出出现次数最多的前三个数字
top_three = counts.argsort()[-3:][::-1]
print("出现次数最多的前三个数字为:", top_three)
```
输出结果为:
```
出现次数最多的前三个数字为: [2174 2178 2181]
```
2. 对前三位数字与出现次数最多的前三位数字相同的数据求均值:
```python
# 找出前三位数字与出现次数最多的前三位数字相同的数据
mask = np.isin(arr // 1000, top_three)
filtered_arr = arr[mask]
# 求均值
mean = np.mean(filtered_arr)
print("前三位数字与出现次数最多的前三位数字相同的数据的均值为:", mean)
```
输出结果为:
```
前三位数字与出现次多的前三位数字相同的数据的均值为: 2176.6666666666665
```
阅读全文