首 页IT知识库收藏内容
当前位置:翔宇亭IT乐园IT知识库R语言

在R中计算加权平均数

减小字体 增大字体 作者:biye5u.com  来源:本站原创  发布时间:2018-07-19 23:43:16

对分组的数据可以计算加权平均数(或称为加权平均值)。在计算加权平均数时,先将每组的变量分别乘以各自的频数,然后再除以总次数(或总频数),其计算公式为:

加权平均数

其中,xi为变量,fi为xi出现的次数或频数,n为总次数(或总频数),n = f1 + f2 + ... + fk

fi也称之为xi的权.

在R中,使用weighted.mean()函数来计算加权平均数,其使用格式为:

weighted.mean(x, w, ..., na.rm = FALSE)

参数x为表示数据的向量,w为向量,是对应x各分量的权重。

(1)使用举例如下:

某幼儿园共有儿童458名,其中3岁至6岁儿童的人数分别为90,130,120,118名,试在R中计算该幼儿园儿童的平均年龄。

可以编写程序如下:

x <- 3:6
f <- c(90,130,120,118)
weighted.mean(x, w = f)

计算结果为:4.580 786,即该幼儿园儿童的平均年龄为4.58岁。

(2)再举一例:

某三个县人数分别为:15万人,7万人、10万人,其人均耕地面积分别为:0.15公顷、0.21公顷、0.18公顷,式计算这三个县的人均耕地面积是多少公顷?

编写程序如下:

x <- c(0.15, 0.21, 0.18)
f <- c(15, 7, 10)
weighted.mean(x, w = f)

计算结果为:0.1725,即这三个县的人均耕地面积为0.1725公顷。

(3)第3个例子

学校算期末成绩,期中考试占30%,期末考试占50%,作业占20%,假如某人期中考试得了84,期末92,作业分91,求该学生的加权平均值。

编写程序如下:

grade <- c(84, 92, 91)
weight <- c(0.3,0.5, 0.2)
weighted.mean(grade, w = weight)

计算结果如下:

89.4

微信搜索“优雅的代码”关注本站的公众号,或直接使用微信扫描下面二维码关注本站公众号,以获取最新内容。

个人成长离不开各位的关注,你的关注就是我继续前行的动力。

知识评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
愿您的精彩评论引起共鸣,带来思考和价值。
用户名: 查看更多评论
分 值:100分 90分 80分 70分 60分 40分 20分
内 容:
验证码:

相关文章

关于本站 | 网站帮助 | 广告合作 | 网站声明 | 友情连接 | 网站地图
本站部分内容来自互联网,如有侵权,请来信告之,谢谢!
Copyright © 2007-2024 biye5u.com. All Rights Reserved.