📜  以图形方式理解均值:两个小节(1)

📅  最后修改于: 2023-12-03 15:36:22.213000             🧑  作者: Mango

以图形方式理解均值:两个小节

在数据分析和机器学习中,均值是一个非常重要的统计量。均值可以告诉我们一组数据的集中趋势。本文通过图形的方式,让程序员更好地理解均值。

小节一:直方图

直方图是一种常用的可视化工具,可用于展示一组数据的分布情况。我们可以通过直方图来直观地看出数据的中心位置。

假设我们有一个数据集,其中包含了多个人的年龄:

[18, 20, 21, 22, 22, 23, 24, 26, 27, 29, 35, 40, 45, 50]

我们可以使用Python中的matplotlib库来绘制这个数据集的直方图:

import matplotlib.pyplot as plt

ages = [18, 20, 21, 22, 22, 23, 24, 26, 27, 29, 35, 40, 45, 50]

plt.hist(ages, bins=5)

plt.show()

运行这段程序,我们可以得到以下直方图:

histogram

直方图的x轴表示年龄,y轴表示频数(某个年龄出现的次数)。通过直方图,我们可以看到数据的分布情况。我们可以看到,年龄的分布情况大致呈现一个正态分布。从直方图可以看出,年龄的中心位置应该是在大约30岁左右。

我们可以使用numpy库来计算这个数据集的均值:

import numpy as np

ages = [18, 20, 21, 22, 22, 23, 24, 26, 27, 29, 35, 40, 45, 50]

mean_age = np.mean(ages)

print("Mean age is:", mean_age)

运行这段程序,我们可以得到以下输出:

Mean age is: 29.214285714285715

可以看到,这个数据集的均值为29.21岁。与直方图的结果相符。

小节二:箱线图

箱线图是一种非常常用的可视化工具,用于展示多个数据集的统计数据。箱线图可以同时展示数据的中位数、上下四分位数、最小值、最大值和离群值等。

我们先来看一个数据集:

[10, 11, 13, 15, 16, 18, 20, 24, 25, 30, 40, 50]

我们可以使用Python中的matplotlib库来绘制这个数据集的箱线图:

import matplotlib.pyplot as plt

data = [10, 11, 13, 15, 16, 18, 20, 24, 25, 30, 40, 50]

plt.boxplot(data)

plt.show()

运行这段程序,我们可以得到以下箱线图:

boxplot

从图中可以看出,这个数据集的中位数是大约18,上下四分位数(Q1和Q3)分别为12和30。数据的最小值为10,最大值为50。从箱线图可以看出,除了几个离群值之外,数据集的分布情况比较均匀。这也意味着这个数据集的均值应该比较接近中位数。

我们可以使用numpy库来计算这个数据集的均值:

import numpy as np

data = [10, 11, 13, 15, 16, 18, 20, 24, 25, 30, 40, 50]

mean_data = np.mean(data)

print("Mean of data is:", mean_data)

运行这段程序,我们可以得到以下输出:

Mean of data is: 21.25

可以看到,这个数据集的均值为21.25。与箱线图的结果相符。

通过以上的两个小节,我们可以看到,直方图和箱线图是两种非常直观的方法来形象地理解数据集的均值。在实际的数据分析和机器学习中,我们应该根据具体的情况来选择适合的可视化工具,让数据更加直观和易于理解。