用python求一组成绩中的中位数、众数、极差,并画出该组成绩的箱线图
时间: 2024-10-13 22:09:19 浏览: 37
在Python中,你可以使用numpy和matplotlib库来计算成绩的中位数、众数和极差,并绘制箱线图。下面是一个简单的步骤示例:
首先,安装需要的库,如果尚未安装,可以使用pip安装:
```bash
pip install numpy matplotlib pandas
```
然后,假设你有一个成绩列表scores:
```python
import numpy as np
import matplotlib.pyplot as plt
from collections import Counter
# 假设scores = [85, 90, 78, 82, 90, 85, 92, 76, 88, 85]
scores = [85, 90, 78, 82, 90, 85, 92, 76, 88, 85]
# 计算中位数
median = np.median(scores)
# 计算众数(出现次数最多的分数)
counter = Counter(scores)
mode = counter.most_common(1)[0][0] if len(counter) > 1 else None
# 极差(最大值减去最小值)
range_values = max(scores) - min(scores)
range_ = range_values
# 绘制箱线图
plt.boxplot(scores)
plt.title('Score Distribution')
plt.ylabel('Scores')
plt.show()
print(f"中位数:{median}")
print(f"众数:{mode}")
print(f"极差:{range_}")
```
在这个例子中,我们先导入了所需的库,然后计算了中位数、众数以及极差。箱线图(box plot)则展示了数据的分布情况,包括四分位数、上下四分位距等信息。
阅读全文