京公网安备 11010802034615号
经营许可证编号:京B2-20210330
R语言平均值,中位数和众数
R中的统计分析通过使用许多内置函数来执行的。这些函数大部分是R基础包的一部分。这些函数将R向量与参数一起作为输入,并在执行计算后给出结果。
我们在本章中讨论的是如何求平均值,中位数和众数。下面将分别一个个演示和讲解 -
1.平均值
平均值是通过取数值的总和并除以数据序列中的值的数量来计算。函数mean()用于在R中计算平均值。
语法
R中计算平均值的基本语法是 -
mean(x, trim = 0, na.rm = FALSE, ...)
R
以下是使用的参数的描述 -
x - 是输入向量。
trim - 用于从排序的向量的两端删除一些观测值。
na.rm - 用于从输入向量中删除缺少的值。
示例
# Create a vector.
x <- c(17,8,6,4.12,11,8,54,-11,18,-7)
# Find Mean.
result.mean <- mean(x)
print(result.mean)
R
当我们执行上述代码时,会产生以下结果 -
[1] 10.812
Shell
1.1.应用修剪选项
当提供trim参数时,向量中的值进行排序,然后从计算平均值中删除所需数量的观察值。
例如,当trim = 0.3时,每一端的3个值将从计算中删除以找到均值。
在这种情况下,排序的向量为(-21,-5,2,3,42,7,8,12,18,54),从用于计算平均值的向量中从左边删除:(-21,-5,2)和从右边删除:(12,18,54)这几个值。
# Create a vector.
x <- c(12,7,3,4.2,18,2,54,-21,8,-5)
# Find Mean.
result.mean <- mean(x,trim = 0.3)
print(result.mean)
R
当我们执行上述代码时,会产生以下结果 -
[1] 5.55
Shell
1.2.应用NA选项
如果缺少值,则平均函数返回NA。要从计算中删除缺少的值,请使用na.rm = TRUE。 这意味着删除NA值。参考以下示例代码 -
# Create a vector.
x <- c(12,7,3,4.2,18,2,54,-21,8,-5,NA)
# Find mean.
result.mean <- mean(x)
print(result.mean)
# Find mean dropping NA values.
result.mean <- mean(x,na.rm = TRUE)
print(result.mean)
R
当我们执行上述代码时,会产生以下结果 -
[1] NA
[1] 8.22
Shell
2.中位数
数据系列中的中间值被称为中位数。R中使用median()函数来计算中位数。
语法
R中计算位数的基本语法是 -
median(x, na.rm = FALSE)
R
以下是使用的参数的描述 -
x - 是输入向量。
na.rm - 用于从输入向量中删除缺少的值。
示例
# Create the vector.
x <- c(12,7,3,4.2,18,2,54,-21,8,-5)
# Find the median.
median.result <- median(x)
print(median.result)
R
当我们执行上述代码时,会产生以下结果 -
[1] 5.6
Shell
3.众数
众数是指给定的一组数据集合中出现次数最多的值。不同于平均值和中位数,众数可以同时具有数字和字符数据。
R没有标准的内置函数来计算众数。因此,我们将创建一个用户自定义函数来计算R中的数据集的众数。该函数将向量作为输入,并将众数值作为输出。
示例
# Create the function.
getmode <- function(v) {
uniqv <- unique(v)
uniqv[which.max(tabulate(match(v, uniqv)))]
}
# Create the vector with numbers.
v <- c(2,1,2,3,1,2,3,4,1,5,5,3,2,3)
# Calculate the mode using the user function.
result <- getmode(v)
print(result)
# Create the vector with characters.
charv <- c("baidu.com","tmall.com","yiibai.com","qq.com","yiibai.com")
# Calculate the mode using the user function.
result <- getmode(charv)
print(result)
R
当我们执行上述代码时,会产生以下结果 -
[1] 2
[1] "yiibai.com"
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在数据驱动决策的时代,数据分析已成为企业运营、产品优化、业务增长的核心工具。但实际工作中,很多数据分析项目看似流程完整, ...
2026-01-15在CDA(Certified Data Analyst)数据分析师的日常工作中,“高维数据处理”是高频痛点——比如用户画像包含“浏览次数、停留时 ...
2026-01-15在教育测量与评价领域,百分制考试成绩的分布规律是评估教学效果、优化命题设计的核心依据,而正态分布则是其中最具代表性的分布 ...
2026-01-15在用户从“接触产品”到“完成核心目标”的全链路中,流失是必然存在的——电商用户可能“浏览商品却未下单”,APP新用户可能“ ...
2026-01-14在产品增长的核心指标体系中,次日留存率是当之无愧的“入门级关键指标”——它直接反映用户对产品的首次体验反馈,是判断产品是 ...
2026-01-14在CDA(Certified Data Analyst)数据分析师的业务实操中,“分类预测”是高频核心需求——比如“预测用户是否会购买商品”“判 ...
2026-01-14在数字化时代,用户的每一次操作——无论是电商平台的“浏览-加购-下单”、APP的“登录-点击-留存”,还是金融产品的“注册-实名 ...
2026-01-13在数据驱动决策的时代,“数据质量决定分析价值”已成为行业共识。数据库、日志系统、第三方平台等渠道采集的原始数据,往往存在 ...
2026-01-13在CDA(Certified Data Analyst)数据分析师的核心能力体系中,“通过数据建立模型、实现预测与归因”是进阶关键——比如“预测 ...
2026-01-13在企业数字化转型过程中,业务模型与数据模型是两大核心支撑体系:业务模型承载“业务应该如何运转”的逻辑,数据模型解决“数据 ...
2026-01-12当前手游市场进入存量竞争时代,“拉新难、留存更难”成为行业普遍痛点。对于手游产品而言,用户留存率不仅直接决定产品的生命周 ...
2026-01-12在CDA(Certified Data Analyst)数据分析师的日常工作中,“挖掘变量间的关联关系”是高频核心需求——比如判断“用户停留时长 ...
2026-01-12在存量竞争时代,用户流失率直接影响企业的营收与市场竞争力。无论是电商、互联网服务还是金融行业,提前精准预测潜在流失用户, ...
2026-01-09在量化投资领域,多因子选股是主流的选股策略之一——其核心逻辑是通过挖掘影响股票未来收益的各类因子(如估值、成长、盈利、流 ...
2026-01-09在CDA(Certified Data Analyst)数据分析师的工作场景中,分类型变量的关联分析是高频需求——例如“用户性别与商品偏好是否相 ...
2026-01-09数据库中的历史数据,是企业运营过程中沉淀的核心资产——包含用户行为轨迹、业务交易记录、产品迭代日志、市场活动效果等多维度 ...
2026-01-08在电商行业竞争日趋激烈的当下,数据已成为驱动业务增长的核心引擎。电商公司的数据分析师,不仅是数据的“解读官”,更是业务的 ...
2026-01-08在数据驱动决策的链路中,统计制图是CDA(Certified Data Analyst)数据分析师将抽象数据转化为直观洞察的关键载体。不同于普通 ...
2026-01-08在主成分分析(PCA)的学习与实践中,“主成分载荷矩阵”和“成分矩阵”是两个高频出现但极易混淆的核心概念。两者均是主成分分 ...
2026-01-07在教学管理、学生成绩分析场景中,成绩分布图是直观呈现成绩分布规律的核心工具——通过图表能快速看出成绩集中区间、高分/低分 ...
2026-01-07