📜  如何在 R 中将均值和中值添加到直方图中?

📅  最后修改于: 2022-05-13 01:54:42.743000             🧑  作者: Mango

如何在 R 中将均值和中值添加到直方图中?

可视化数据可以帮助从中收集描述性统计无法获得的洞察力。 Anscombe's Quartet向我们展示了这些统计数据如何具有误导性,因此它变成了视觉分析数据。直方图是一种可视化连续变量数据分布的方法。直方图类似于条形图,但条形图可视化分类数据,而直方图可视化连续数据。在本文中,我们将看到如何在 R 编程语言中创建直方图,以及如何向它们添加均值线和中值线。

如何制作直方图?

在学习创建直方图的代码之前,让我们继续了解如何制作直方图。创建直方图的过程很简单,您首先要确定 bin 大小,现在我们将 bin 大小设为 5。接下来,我们将找到 no 的频率。位于垃圾箱中(0-5、5-10、10-15、..)。因此,如果我们的样本数据为 [2, 3, 7, 8, 10, 13, 14, 15, 17, 18, 20, 22, 25, 26, 27, 28] 并且 bin 大小为 5,那么我们将得到以下直方图:-

让我们理解上面的情节。在我们的示例数据中,我们有 2 个值在 0-5 范围内,因此 0-5 的条在 y 轴上的高度为 2 个单位。类似地,我们有 5-10 范围内的 3 个值,因此该条的高度为 3。直方图随着 bin 大小的变化而变化。 bin 大小为 3 的相同数据将给出以下直方图:-



因此,重要的是设置正确的 bin 大小,以便从数据中获得有价值的见解。有很多公式可以找到正确的 bin 大小,例如 Sturge 规则、Rice 规则、Scott 规则等。

在 R 中创建直方图

R 中的直方图可以使用 hist()函数创建。你所做的只是将数据传递给函数,它会为你绘制它。让我们继续创建一个直方图。

R
l <- c(2, 3, 7, 8, 10, 13, 14, 15,
       18, 18, 20, 26, 25, 26, 27, 28)
hist(l)


R
l <- c(2, 3, 7, 8, 10, 13, 14, 15,
       18, 18, 20, 26, 25, 26, 27, 28)
  
# Mean of l
mean <- mean(l)
  
# Plotting histogram and Adding
# Mean line to Histogram
hist(l)
abline(v = mean, col = 'blue')


R
l <- c(2, 3, 7, 8, 10, 13, 14, 15,
       18, 18, 20, 26, 25, 26, 27, 28)
  
# Median of l
med <- median(l)
  
# Plotting histogram and Adding 
# Median line to Histogram
hist(l)
abline(v = med, col = 'red')


输出:

添加平均值和中位数

现在我们已经创建了直方图,让我们为其添加均值线和中值线。找到它的平均值和中值线。但是在添加它们之前,让我们找到它们以找到 R 中数据的均值和中位数,我们可以使用mean()medium()函数。

mean <- mean(l)     # Mean: 16.25
med <- median(l)    # Meadian: 16.5

现在我们有了均值和中值,让我们使用 abline()函数将均值添加到绘图中,并将其颜色设置为蓝色。

abline(v = mean, col = 'blue')

示例 1:在 R 中向直方图添加均值



电阻

l <- c(2, 3, 7, 8, 10, 13, 14, 15,
       18, 18, 20, 26, 25, 26, 27, 28)
  
# Mean of l
mean <- mean(l)
  
# Plotting histogram and Adding
# Mean line to Histogram
hist(l)
abline(v = mean, col = 'blue')

输出:

示例 2:在 R 中向直方图添加中值

让我们使用 abline()函数将中位数添加到图中,并将其颜色设置为红色。

abline(v = med, col = 'red')

电阻

l <- c(2, 3, 7, 8, 10, 13, 14, 15,
       18, 18, 20, 26, 25, 26, 27, 28)
  
# Median of l
med <- median(l)
  
# Plotting histogram and Adding 
# Median line to Histogram
hist(l)
abline(v = med, col = 'red')