R语言实现:统计学及计量专业中的多种平均值计算方式

平均值在计量专业和统计学中有着广泛的应用如:描述数据集中趋势、比较不同组数据、评估数据的代表性、决策和判断、回归分析概率统计与财务分析等。此外,在计量专业中,平均值还被广泛应用于各种测量和校准过程中,以确保测量结果的准确性和可靠性。例如,在实验室测量中,多次测量的平均值可以提高测量的精度;在质量控制中,通过计算产品的平均质量水平来评估生产过程的稳定性等。
算数平均数(Mean):
算术平均值为所有数值相加后除以数值的个数,它反映了数据的一般水平。其中,简单平均数(算术平均数)是把所有数值相加,然后用总数除以数值的个数。这种方法假设每个数值具有相同的权重或重要性。简单平均数是反映一组数据的一般水平的重要指标,它利用了所有数据的信息,并且在数学上是使误差平方和达到最小的统计量。
x ˉ = x 1 + x 2 + x 3 + . . . + x n n = Σ i = 1 n x i n \bar{x}=\frac{x_{1}+x_{2}+x_{3}+...+x_{n}}{n}=\frac{\Sigma^{n}_{i=1}x_{i}}{n} xˉ=nx1+x2+x3+...+xn=nΣi=1nxi 衍生公式(如计算方差时用到):
V a r i a n c e = 1 n ∑ i = 1 n ( x i − A M ) 2 Variance = \frac{1}{n} \sum_{i=1}^{n} (x_i - AM)^2 Variance=n1i=1n(xiAM)2 A M = 1 n ∑ i = 1 n x i AM = \frac{1}{n} \sum_{i=1}^{n} x_i AM=n1i=1nxi,其中 :
* n n n :数据的数量
* x i x_i xi :每个数据点。
建立样品数据:

name <- c("大天二", "陈浩南", "刘亦菲", "山鸡", "蕉皮", "洪满天",
          "刘华强", "马大脚", "奥利给", "大金刚", "马里奥", "GGBond",
          "菲菲", "刘老二")
gender <- c("男", "女", "男", "女", "女", "男", "男", "女",
            "男", "男", "女", "女", "男", "女")
stat <- c(11, 12, 15, 85, 76, 45, 78, 99, 64, 10, 73, 74, 82, 72)
math <- c(44, 67, 82, 91, 45, 23, 1, 98, 23, 45, 24, 30, 75, 69)
econ <- c(99, 85, 79, 68, 49, 79, 88, 92, 93, 94, 89, 84, 46, 77)

student_data <- data.frame(姓名=name, 性别=gender, 统计学=stat,数学=math, 经济学=econ)

print(student_data)

在这里插入图片描述

计算统计学的平均分数:

simple_mean <- mean(student_data$统计学)
print(simple_mean)
# 输出: 56.85714

平均值在以下情况下可以作为最佳估约值:

  1. 数据分布均匀:当数据集中的数值分布相对均匀,没有明显的极端值时,平均值能够较好地代表整体数据的中心趋势。
  2. 大样本量:当样本量足够大时,平均值受个别极端值的影响会相对较小,因此更能准确地反映数据的整体情况。
  3. 对称分布:对于对称分布的数据集(如正态分布),平均值是描述数据中心位置的最佳选择。

但需要注意的是,在数据存在极端值或分布严重偏斜的情况下,平均值可能不是最佳的估约值(比如存在系统误差)。在这种情况下,中位数或众数可能更能代表数据的中心趋势。因此,在选择使用平均值作为估约值时,需要综合考虑数据的分布特点和具体应用场景。
加权算数平均值
在计算平均数时,给每个数据赋予一个权重,以反映数据的重要性。每个数据与其对应的权重相乘,然后将所得的乘积求和,再除以所有权重的总和。加权平均数能够更准确地反映数据的实际重要性,特别是在数据点的重要性或频率不均匀分布的情况下。 x ˉ = m 1 f 1 + m 2 f 2 + m 3 f 3 + . . . + m k f k f 1 + f 2 + f 3 + . . . + f k = Σ i = 1 k m i f i n \bar{x}=\frac{m_{1}f_{1}+m_{2}f_{2}+m_{3}f_{3}+...+m_{k}f_{k}}{f_{1}+f_{2}+f_{3}+...+f_{k}}=\frac{\Sigma_{i=1}^{k}m_{i}f_{i}}{n} xˉ=f1+f2+f3+...+fkm1f1+m2f2+m3f3+...+mkfk=nΣi=1kmifi * x ˉ \bar{x} xˉ:表示加权平均值。

* m i m_i mi:表示第 i i i个测量值或数据点。

* f i f_i fi:表示与第 i i i个测量值相关联的权重(或称为频数)。

* k k k:表示测量值的数量。

* n n n:表示所有权重的总和,即 n = f 1 + f 2 + f 3 + . . . + f k n = f_1 + f_2 + f_3 + ... + f_k n=f1+f2+f3+...+fk

* Σ i = 1 k \Sigma_{i=1}^{k} Σi=1k:表示从 i = 1 i=1 i=1 i = k i=k i=k的求和符号。

* m 1 f 1 + m 2 f 2 + m 3 f 3 + . . . + m k f k m_{1}f_{1} + m_{2}f_{2} + m_{3}f_{3} + ... + m_{k}f_{k} m1f1+m2f2+m3f3+...+mkfk:这部分是测量值与对应权重的乘积之和。它表示了每个测量值根据其权重对总和的贡献。

* f 1 + f 2 + f 3 + . . . + f k f_{1} + f_{2} + f_{3} + ... + f_{k} f1+f2+f3+...+fk:这是所有权重的总和,也称为 n n n。它用于标准化上述乘积之和,以确保加权平均值在合理的范围内。

因此,加权平均值 x ˉ \bar{x} xˉ是测量值与权重乘积之和除以权重之和。这反映了每个测量值根据其权重对平均值的贡献。

在计量专业中加权算数平均值的计算公式为:

x w = Σ i = 1 m W i x i Σ i = 1 m W i = Σ i = 1 m W i Σ i = 1 m W i x i = Σ i = 1 m w i x i x_{w}=\frac{\Sigma^{m}_{i=1}W_{i}x_{i}}{\Sigma_{i=1}^{m}W_{i}}=\Sigma_{i=1}^{m}\frac{W_{i}}{\Sigma_{i=1}^{m}W_{i}}x_{i}=\Sigma^{m}_{i=1}w_{i}x_{i} xw=Σi=1mWiΣi=1mWixi=Σi=1mΣi=1mWiWixi=Σi=1mwixi * x w x_{w} xw:加权算数平均值

* W i W_{i} Wi:第 i i i次测量结果的权

* x i x_{i} xi:第i次的测量结果

* m m m:测量次数

* w i w_{i} wi:归一化的权,即 Σ i m w i = 1 \Sigma^{m}_{i}w_{i}=1 Σimwi=1

在计算 x w x_{w} xw时,各测量结果 x i x_{i} xi所占的比重,用权 W i W_{i} Wi表示。 W i W_{i} Wi越大, x i x_{i} xi越可信赖,则加权平均计算中 x i x_{i} xi的权应该相应的越大。由于最终对加权算术平值起作用的归一化的权 w i w_{i} wi,所以,对于一组权( W 1 , W 2 , . . . , W n , W_{1},W_{2},...,W_{n}, W1,W2,...,Wn,),每个 W i W_{i} Wi都放大或缩小同样倍数,并不影响加权平均中的实际权重。 假设几个实验室分别对同一被测量在相同环境等测量条件下的测得值为 x i x_{i} xi,其标准不确定度为 u i u_{i} ui,且评定数值合理;各实验室均为独立测量;而且这组独立测量数据之间是兼容的;此时,权的计算公式为: W i = 1 u i 2 W_{i}=\frac{1}{u^{2}_{i}} Wi=ui21 即加权平均的权与每个参与计算的测量值的试验标准偏差的二次方成反比。 假设有三个实验室对同一被测量进行了独立测量,测得的数值和标准不确定度如下:

实验室1:测得值 ( x 1 x_{1} x1 = 10.5 ),标准不确定度 ( u 1 u_{1} u1 = 0.5 )
实验室2:测得值 ( x 2 x_{2} x2 = 10.2 ),标准不确定度 ( u 2 u_{2} u2 = 0.3 )
实验室3:测得值 ( x 3 x_{3} x3 = 10.7 ),标准不确定度 ( u 3 u_{3} u3 = 0.4 )
我们要计算这组测量值的加权算术平均值 W i = 1 u i 2 W_{i} = \frac{1}{u_{i}^{2}} Wi=ui21 来计算每个测量结果的权:
实验室1的权 W 1 = 1 0. 5 2 = 4 W_{1} = \frac{1}{0.5^{2}} = 4 W1=0.521=4
实验室2的权 W 2 = 1 0. 3 2 ≈ 11.1111 W_{2} = \frac{1}{0.3^{2}} \approx 11.1111 W2=0.32111.1111
实验室3的权 W 3 = 1 0. 4 2 = 6.25 W_{3} = \frac{1}{0.4^{2}} = 6.25 W3=0.421=6.25
接下来计算归一化的权 w i w_{i} wi

总权 Σ W i = 4 + 11.1111 + 6.25 = 21.3611 \Sigma W_{i} = 4 + 11.1111 + 6.25 = 21.3611 ΣWi=4+11.1111+6.25=21.3611
实验室1的归一化权 w 1 = 4 21.3611 ≈ 0.1872 w_{1} = \frac{4}{21.3611} \approx 0.1872 w1=21.361140.1872
实验室2的归一化权 w 2 = 11.1111 21.3611 ≈ 0.5202 w_{2} = \frac{11.1111}{21.3611}\approx 0.5202 w2=21.361111.11110.5202
实验室3的归一化权 w 3 = 6.25 21.3611 ≈ 0.2926 w_{3} = \frac{6.25}{21.3611} \approx 0.2926 w3=21.36116.250.2926
最后,我们根据加权算术平均值的公式计算 ( x w x_{w} xw ):

1. x w = Σ i = 1 m w ∗ i x i = w 1 x 1 + w 2 x 2 + w 3 x 3 x_{w} = \Sigma_{i=1}^{m} w*{i} x_{i} = w_{1} x_{1} + w_{2} x_{2} + w_{3} x_{3} xw=Σi=1mwixi=w1x1+w2x2+w3x3)
2. x w ∗ ≈ 0.187210.5 + 0.5202 ∗ 10.2 + 0.2926 ∗ 10.7 x_{w}* \approx 0.1872 10.5 + 0.5202 *10.2 + 0.2926* 10.7 xw0.187210.5+0.520210.2+0.292610.7)
3. x w ≈ 10.3978 x_{w} \approx 10.3978 xw10.3978
所以,这组测量值的加权算术平均值约为 10.3978。

# 定义测量值和标准不确定度  
x <- c(10.5, 10.2, 10.7)  
u <- c(0.5, 0.3, 0.4)  
  
# 计算权值  
W <- 1 / (u^2)  
  
# 计算归一化权值  
w <- W / sum(W)  
  
# 计算加权算术平均值  
x_w <- sum(w * x)  
print(x_w)  # 输出加权算术平均值
#  输出: 10.40247

公式变形
x ˉ = Σ i = 1 k m i f i n \bar{x} = \frac{\Sigma_{i=1}^{k}m_{i}f_{i}}{n} xˉ=nΣi=1kmifi,其中:
* Σ i = 1 k m i f i \Sigma_{i=1}^{k}m_{i}f_{i} Σi=1kmifi表示所有 m i m_i mi f i f_i fi乘积的和
* n n n是所有权重的总和。
这种表示方法更为简洁,且更通用。

计算完实验室数据后继续上述代码,计算学生成绩表的加权平均数,以经济学成绩作为权重

weighted_mean_stat <- weighted.mean(student_data$统计学, student_data$经济学)  
print(weighted_mean_stat) 
# 输出:54.58645

计算每个科目的简单平均数和加权平均数

# 初始化一个数据框来存储结果  
results <- data.frame(Subject=character(), SimpleMean=numeric(), WeightedMean=numeric())   
subjects <- c("统计学", "数学", "经济学")  
for (subject in subjects) {  
  simple_mean <- mean(student_data[[subject]])  
  weighted_mean <- weighted.mean(student_data[[subject]], student_data$经济学)  
  results <- rbind(results, data.frame(Subject=subject, SimpleMean=simple_mean, WeightedMean=weighted_mean))  
}  
print(results)

在这里插入图片描述
使用ggplot2绘制气泡图

library(ggplot2)  
student_data$性别 <- as.factor(student_data$性别)  

ggplot(student_data, aes(x = 统计学, y = 数学, color = 性别, size = 经济学)) +  
  geom_point(alpha = 0.7) + # alpha用于设置点的透明度  
  scale_size(range = c(1, 10)) + # 设置气泡的最小和最大尺寸  
  theme_minimal() + # 使用简洁的主题  
  ggtitle("学生成绩气泡图") + # 设置图表标题  
  xlab("统计学成绩") + # 设置x轴标签  
  ylab("数学成绩") + # 设置y轴标签  
  guides(size = guide_legend(title = "经济学成绩")) 

在这里插入图片描述
几何平均值(Geometric Mean):
计算公式:
G M = ( ∏ i = 1 n x i ) 1 n GM = (\prod_{i=1}^{n} x_i)^{\frac{1}{n}} GM=(i=1nxi)n1,其中:

  • ∏ \prod :连乘
  • * n n n :数据的数量
  • * x i x_i xi :每个数据点。
    几何平均值常用于计算平均增长率或复利等情况,在计量专业中使用几何平均值可以有效的消除系统误差。
    在计量专业中最常见的就是等臂天平测量。
geometric_mean <- function(x) {  
  if(all(x > 0)) {  
    return(prod(x)^(1/length(x)))  
  } else {  
    stop("所有数值必须为正数")  
  }  
}  
  
values <- c(12.5, 12.2, 12.1, 12.3, 12.2)  
  
geom_mean <- geometric_mean(values)  
print(geom_mean)

# 输出: 12.25925

调和平均值(Harmonic Mean):
计算公式:
H M = n ∑ i = 1 n 1 x i HM = \frac{n}{\sum_{i=1}^{n} \frac{1}{x_i}} HM=i=1nxi1n,其中:

  • n n n :数据的数量
  • x i x_i xi :每个数据点。
    调和平均值常用于计算平均速率或成本等情况。
    以下数据为一组气体流量计的实时流量记录:
harmonic_mean <- function(x) {  
  if(all(x > 0)) {  
    return(length(x) / sum(1/x))  
  } else {  
    stop("所有数值必须为正数")  
  }  
}  
  
values <- c(400.38, 400.41, 400.11, 400.35, 400.44, 400.19)  

harm_mean <- harmonic_mean(values)  
print(harm_mean)
# 输出: 400.3133

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/521103.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

34.Python从入门到精通—Python3 正则表达式检索和替换

34.从入门到精通&#xff1a;Python3 正则表达式检索和替换 repl 参数是一个函数 正则表达式对象 正则表达式修饰符 - 可选标志 正则表达式模式* 正则表达式实例 检索和替换repl 参数是一个函数正则表达式对象正则表达式修饰符 - 可选标志正则表达式模式*正则表达式实例 检索和…

动规训练4

目录 一、买股票的最佳实际含冷冻期 1、题目解析 2、算法原理 a状态表示方程 b状态转移方程 c初始化 d填表顺序 e返回值 3、代码 4、感想 二、买股票的最佳时机函手续费 1、题目解析 2、算法原理 a状态表示方程 b状态转移方程 c初始化 d填表顺序 e返回值 3、…

STM3定时器输入捕获、超声波测距

1、超声波测距模块介绍 1、HC-SR04共四个引脚&#xff1a;VCC、GND、Trig、Echo&#xff0c;如下图 2、使用 1、通过gpio口向Trig引脚发送一个脉冲信号。 2、HC-SR04接收到脉冲信号后&#xff0c;就会向外发送一段超声波&#xff0c;模块会将echo拉高。 …

Web CSS笔记3

一、边框弧度 使用它你就可以制作盒子边框圆角 border-radius&#xff1a;1个值四个圆角值相同2个值 第一个值为左上角与右下角&#xff0c;第二个值为右上角与左下角3个值第一个值为左上角, 第二个值为右上角和左下角&#xff0c;第三个值为右下角4个值 左上角&#xff0c;右…

舞蹈网站制作分享,舞蹈培训商城网站设计案例分享,wordpress主题分享

嘿&#xff0c;朋友们&#xff01;今天我要跟你们唠一唠一个超级酷炫的舞蹈培训商城网站设计案例。 咱先说说这个网站的目标哈&#xff0c;那就是得让喜欢舞蹈的小伙伴们能够轻轻松松找到自己心水的课程和商品。 那制作过程都有啥呢&#xff1f;别急&#xff0c;听我慢慢道来。…

c# wpf LiveCharts 绑定 多线条 简单试验

1.概要 c# wpf LiveCharts 绑定 多线条 简单试验 2.代码 <Window x:Class"WpfApp3.Window4"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d"http:…

清明假期作业

1、实现文件夹的拷贝功能 注意判断被拷贝的文件夹是否存在&#xff0c;如果不存在则提前 不考虑递归拷贝的问题 #include<myhead.h> int my_copy(char* name,const char *p) {char buf[256]"./";strcat(buf,p);strcat(buf,"/");strcat(buf,name);in…

P1001 A+B Problem

1.题目背景 强烈推荐新用户必读帖。 不熟悉算法竞赛的选手请看这里&#xff1a; 算法竞赛中要求的输出格式中&#xff0c;**不能有多余的内容&#xff0c;这也包括了“请输入整数a和b” 这一类的提示用户输入信息的内容。**若包含了这些内容&#xff0c;将会被认为是Wrong Answ…

嵌入式Qt QGridLayout网格布局管理器

一.QGridLayout网格布局管理器 //以行为单位 设置比例系数 void QGridLayout::setRowStretch ( int row, int stretch ) //以列为单位 设置比例系数 void QGridLayout::setColumnStretch ( int column, int stretch ) 实验&#xff1a; Widget.h&#xff1a; #ifndef _WIDGE…

dm8数据迁移工具DTS

dm8数据迁移工具DTS DTS工具介绍 DM数据迁移工具提供了主流大型数据库迁移到DM、DM到DM、文件迁移到DM以及DM迁移到文件的功能。DM数据迁移工具采用向导方式引导用户通过简单的步骤完成需要的操作。 DM数据迁移工具支持&#xff1a; ◆ 主流大型数据库Oracle、SQLServer、MyS…

3.6 CSS定位

CSS定位可以将HTML元素放置在页面上指定的任意地方。CSS定位的原理是把页面左上角的点定义为坐标为(0,0)的原点&#xff0c;然后以像素为单位将整个网页构建成一个坐标系统。其中x轴与数学坐标系方向相同&#xff0c;越往右数字越大&#xff1b;y轴与数学坐标系方向相反&#x…

r3live使用realsense避免相机内参标定

话题 /camera/color/camera_info 消息格式 sensor_msgs/CameraInfo distortion_model&#xff1a;指定了相机畸变模型&#xff0c;"plumb_bob"简单的径向和切向畸变模型 D&#xff1a;畸变参数&#xff0c;取决于畸变模型&#xff0c;(k1, k2, t1, t2, k3)&#xf…

Shell编程初识

Shell初识 ShellShell 脚本Shell 环境第一个shell脚本实例 运行 Shell 脚本方法&#xff1a;1、作为可执行程序2、作为解释器参数3.使用 . (空格)脚本名称来执行4.使用 source 来执行(主要用于生效配置文件)区别1.关于执行权限2.关于是否开启子shell线程 脚本排错及问题判断she…

dm8 备份与恢复

dm8 备份与恢复 基础环境 操作系统&#xff1a;Red Hat Enterprise Linux Server release 7.9 (Maipo) 数据库版本&#xff1a;DM Database Server 64 V8 架构&#xff1a;单实例1 设置bak_path路径 --创建备份文件存放目录 su - dmdba mkdir -p /dm8/backup--修改dm.ini 文件…

Linux学习之路 -- 进程篇 -- PCB介绍2 -- 标识符和进程创建

前面我们介绍了的进程的标识符&#xff0c;下面继续介绍进程标识符和进程创建的知识。 目录 一、进程创建 <1>fork函数的返回值 <2>创建子进程的目的 <3>代码共享 二、fork函数的相关问题 <1>为什么给父进程返回子进程的pid&#xff0c;给子进程…

数据生成 | Matlab实现基于DE差分进化算法的数据生成

数据生成 | Matlab实现基于DE差分进化算法的数据生成 目录 数据生成 | Matlab实现基于DE差分进化算法的数据生成生成效果基本描述模型描述程序设计参考资料 生成效果 基本描述 1.Matlab实现基于DE差分进化算法的数据生成&#xff0c;运行环境Matlab2021b及以上&#xff1b; 2.计…

代码随想录算法训练营Day46|LC139 单词拆分

一句话总结&#xff1a;完全背包&#xff01; 原题链接&#xff1a;139 单词拆分 动态规划之完全背包五部曲&#xff1a; 确定dp数组与下标含义&#xff1a;表示字符串长度为i时&#xff0c;dp[i] true 的话&#xff0c;可以拆分为一个或多个在字典中出现的单词。确定递归公…

C++相关概念和易错语法(4)(构造函数、析构函数)

一、构造函数 1.实现的功能&#xff1a;实例化对象的时候默认自动调用&#xff0c;相当于初始化。 条件&#xff1a;在书写时要满足构造函数的规范&#xff08;函数名 类名&#xff0c;不写返回值&#xff0c;也没有返回值&#xff09;&#xff0c;可以用inline来修饰。 2.自…

Microsoft Edge浏览器设置之后就很牛逼了

1.移除多余的广告 首先我们要先下载Microsoft Edge浏览器浏览器 然后在设置中先打开扩展,安装一个神奇的去广告插件 打开Edge 加载项 直接搜adguard 广告拦截器,直接获取就可以安装了,由于我已经安装过了,所以就是显示的删除。 2.解除网页复制限制 直接在扩展中安装sim…

Toyota Programming Contest 2024#4(AtCoder Beginner Contest 348)(A~D)

A - Penalty Kick i,1~N。如果 i 是 3 的倍数输出x&#xff0c;否则输出o #include <bits/stdc.h> //#define int long long #define per(i,j,k) for(int (i)(j);(i)<(k);(i)) #define rep(i,j,k) for(int (i)(j);(i)>(k);--(i)) #define debug(a) cout<<#…