跳到主要内容

R均值、中位数和众数

提示
  1. 中心趋势指标:均值、中位数和众数是衡量数据集中心趋势的三个主要指标,分别代表数据的平均数、中间值和最常见数。
  2. 计算均值和中位数:在 R 中,使用 mean() 函数计算平均值,使用 median() 函数计算中位数。
  3. 计算众数的方法:R 没有内置函数计算众数,需通过自定义函数(如使用 table() 函数)来计算数据集中最常见的数值。

平均值、众数和中位数是衡量数据集中心趋势的指标。换句话说,它告诉你数据集的“中间”位置在哪里。

这些统计量中的每一个都以不同的方式定义中间。

  • 平均值是数据集的平均数。
  • 众数是数据集中最常见的数。
  • 中位数是一组数字的中间值。

如果你想更详细地了解中心趋势的衡量,请访问 平均值、中位数和众数

在 R 中计算平均值

在 R 中,我们使用 mean() 函数来计算平均值。例如,

# 成绩向量
marks <- c(97, 78, 57, 64, 87)

# 计算平均成绩
result <- mean(marks)

print(result)

输出

[1] 76.6

在上面的示例中,我们使用了 mean() 函数来计算 marks 向量的平均结果。

在 R 中计算中位数

我们使用 median() 函数在 R 中计算中位数。例如,

# 成绩向量
marks <- c(97, 78, 57, 64, 87)

# 查找成绩的中间数
result <- median(marks)

print(result)

输出

[1] 78

在上面的示例中,我们使用了 median() 函数来找出 marks 向量的中间值。

在 R 中计算众数

在 R 中,与平均值和中位数不同,没有内置函数可以计算众数。我们需要创建一个用户定义的函数来计算众数。例如,

# 成绩向量
marks <- c(97, 78, 57, 78, 97, 66, 87, 64, 87, 78)

# 定义 mode() 函数
mode = function() {

# 计算 marks 的众数
return(names(sort(-table(marks)))[1])
}

# 调用 mode() 函数
mode()

输出

[1] "78"

在上面的示例中,我们创建了一个名为 mode() 的函数来计算 marks 向量的众数。

在函数内部,我们使用了 table() 函数来创建数据的分类表示,以变量名称和频率的形式形成表格。

我们将 marks 按降序排序,并返回排序后的值中的第一个值。

最后,我们调用了 mode() 函数,它返回了 marks 中最常见的数字,即 78

注意:我们使用向量来演示如何计算平均值、中位数和众数。我们也可以以类似的方式从 CSV 文件、更大的数据集等中计算平均值、中位数和众数。