📅  最后修改于: 2023-12-03 15:29:39.779000             🧑  作者: Mango
Boxplot(箱线图)是一种用于展示数据分布情况的统计图形。它展示了一组数据的中位数、四分位数、极值以及异常值等信息。在 Python 中,可以通过 matplotlib 库中的 boxplot API 来实现。
下面是一个使用 Python 的 Boxplot 进行数据计数的示例程序。这个例子包含了如下步骤:
import random
import matplotlib.pyplot as plt
# 生成随机数据
data = [random.normalvariate(0, 1) for _ in range(100)]
# 绘制箱线图
plt.boxplot(data)
plt.show()
# 计算数据点数量
median = sorted(data)[int(len(data) / 2)]
less_than_median = len([d for d in data if d < median])
equal_to_median = len([d for d in data if d == median])
greater_than_median = len([d for d in data if d > median])
minimum = min(data)
maximum = max(data)
q1 = sorted(data)[int(len(data) / 4)]
q2 = sorted(data)[int(len(data) / 2)]
q3 = sorted(data)[int(len(data) / 4 * 3)]
# 输出结果
print(f"Median: {median}")
print(f"Less than median: {less_than_median}")
print(f"Equal to median: {equal_to_median}")
print(f"Greater than median: {greater_than_median}")
print(f"Minimum: {minimum}")
print(f"Maximum: {maximum}")
print(f"Q1: {q1}")
print(f"Q2: {q2}")
print(f"Q3: {q3}")
上述程序将生成随机数据,然后绘制出了对应的箱线图。可以看出,数据的中位数在 -0.2 左右,数据分布在 -1 到 1 之间,同时还存在一些异常值。
接下来,程序计算了数据中小于、等于和大于中位数的数据点数,以及最小值、最大值、第一四分位数、第二四分位数、第三四分位数等信息,并输出了结果。可以发现,第一四分位数为 -0.8 左右,第二四分位数为 -0.2 左右,第三四分位数为 0.3 左右,并且不同颜色的点分别代表了小于、等于和大于中位数的数据点。
Python 的 Boxplot 提供了一种直观、简单的方式来展示数据分布情况。在使用 Boxplot 时,可以通过计算数据点数量、最小值、最大值、四分位数等信息来深入了解数据并进行进一步分析和处理。