统计学——单因素方差分析「建议收藏」

统计学——单因素方差分析「建议收藏」概念方差分析:又称变异分析,是英国统计学家R.A.Fisher于1923年提出的一种统计方法,故有时也称为F检验。可简写为ANOVA。用于多组均数之间的显著性检验。要求:各组观察值服从正态分布或近似正态分布,并且各组之间的方差具有齐性。基本思想:将所有测量值间的总变异按照其变异的来源分解为多个部份,然后进行比较,评价由某种因素所引起的变异是否具有统计…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

 

概念

 

方差分析:又称变异分析,是英国统计学家R.A.Fisher于1923年提出的一种统计方法,故有时也称为F检验。

 

可简写为ANOVA。用于多组均数 之间的显著性检验。

 

要求:各组观察值服从正态分布或近似正态分布,并且各组之间的方差具有齐性

 

基本思想:将所有测量值间的总变异按照其变异的来源分解为多个部份,然后进行比较,评价由某种因素所引起的变异是否具有统计学意义。

统计学——单因素方差分析「建议收藏」

 

计算方法

 

总变异(Total variation):全部测量值xij与总均数间μ的差异

组间变异( between group variation ):各组的均数μi与总均数μ间的差异

组内变异(within groupvariation ):每组的每个测量值xij与该组均数μi的差异

统计学——单因素方差分析「建议收藏」

 

 

 

 

其中,三种变异的关系为:SST = SSB + SSW,DT = DB+ DW

 

例题

 

 

 

有三组人,分别服用了不同的高血压药A,B,C一个月以后,观察每一个人血压下降数:

A组               4             5             7             3             8             5             3                                           μA= 5.00

B组               1             5             3             7             4             2             7             4             1             μB= 3.78

C组               7             8             10           6             9             8                                                          μC= 8.00

我们想要知道A,B,C三个药对于下降血压的效果是否有明显的区别。

 

解题

 

假设:

H0:A,B,C三个药下降血压效果没有区别,即μA= μB= μC

H1:A,B,C三个药下降血压有区别

 

1. 首先我们需要求SST,SSB,SSW

 

求SST之前我们先需要求出A,B,C三组人的平均值:

μ = (xA1+xA2+…+xAn+xB1+xB2+…+xBn+xC1+xC2+…+xCn)

= (4+5+7+3+8+5+3+1+5+3+7+4+2+7+4+1+7+8+10+6+9+8)/22

= 5.32

 

所以SST = (xA1-μ)2+…+(xAn-μ)2+(xB1-μ)2…+(xBn-μ)2+(xC1-μ)2…+(xCn-μ)2

= (4-μ)2+…+(3 -μ)2+(1-μ)2…+(1-μ)2+(7-μ)2…+(8-μ)2

= 139

 

再求SSB = (μA -μ) 2+(μA-μ)2+( μA-μ)2+( μB-μ)2+( μB-μ)2+( μB-μ)2+( μC-μ)2+( μC-μ)2+( μC-μ)2=65.2

 

最后求

SSW = (xA1- μA)2+…+(xAn- μA)2+(xB1-μB)2…+(xBn- μB)2+(xC1-μC)2…+(xCn- μC)2

= (4-5.00)2+…+(3 -5.00)2+(1-3.78)2…+(1-3.78)2+(7-8.00)2…+(8 -8.00)2

= 73.6

 

根据性质SST = SSW + SSB,所以这三个只要求出其它两个,另外一个用等式SST= SSW + SSB即可求出。

 

2. 我们求自由度:DT,DB,DW

 

我们知道样本总共有22个,而且我们知道样本总体的值,所以我们只需要知道其中21个样本,剩下的1个就可以的出来,所以总体自由度DT= 22-1 = 21

 

因为我们有3组,我们只需要知道其中的两组,另外一组也可以的出来,所以组间自由度DB= 3-2 = 2

 

第一组有7个样本,我们只需要知道其中的6个,剩下的一个可以的出来,所以第一组的自由度DW1= (7-1) = 6,同理,第二三组的也可以的出来,所以总的组内自由度DW= (7-1) + (9-1) +(6-1) = 19

 

同理,我们有性质DT = DB + DW,所以我们只要知道其中两个自由度,剩下的一个可以由公式得出。

 

3. 最后我们求F,F的公式为F = (SSB/DB) / (SSW/DW) =(65.2/2) / (73.6/19) = 8.42,且自由度为F(2,19)

 

此时我们α=0.05的F分布表如下图,我们看到自由度为2和19时,置信度为95%的值为3.52,而此时我们的值为8.42,远超过3.52,所以我们接受H0的概率小于0.05,所以拒绝H0假设,接受H1,即A,B,C三个药的效果有明显的不同

统计学——单因素方差分析「建议收藏」

R语言实现

 

anova = function(x){
  
  x_mean = sapply(x,mean)
  total_mean = mean(unlist(x))
  
  sst = sum((unlist(x)-total_mean)^2)
  
  ssw = 0
  for(i in 1:length(x)){
    w = sum((x[[i]]-x_mean[i])^2)
    ssw = ssw + w
  }
  
  ssb = 0
  for(i in 1:length(x)){
    b = length(x[[i]])*((x_mean[i]-total_mean)^2)
    ssb = ssb + b
  }
  
  Nt = length(unlist(x))-1 # 总自由度
  Nb = length(x)-1 # 组间自由度
  Nw = Nt - Nb 
  
  f = (ssb/Nb)/(ssw/Nw)
  
  result = c(sst,ssb,ssw,Nt,Nb,Nw,f)
  names(result)= c('sst','ssb','ssw','Nt','Nb','Nw','f')
  
  return(result)
  
}

x1 = c(4,5,7,3,8,5,3)
x2 = c(1,5,3,7,4,2,7,4,1)
x3 = c(7,8,10,6,9,8)
x = list(x1,x2,x3)

f = anova(x)

最后得出f为:

 

统计学——单因素方差分析「建议收藏」

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/181628.html原文链接:https://javaforall.net

(0)
上一篇 2022年10月15日 下午6:46
下一篇 2022年10月15日 下午7:00


相关推荐

  • ARMv6 ARMv7 架构 整体介绍

    ARMv6 ARMv7 架构 整体介绍文章目录市场应用领域市占率常见产品架构编程模型运行状态指令集寄存器非特权级别 usr 模式 下不建议访问的指令与寄存器 ABI 异常模型特权级异常种类内存模型 VMSA amp MMU 内存顺序模型 cache 默认内存一致性模型 debug 模型 ExternalDebu hostedDebugT 模型虚拟化模型安全模型开发工具 gcctoolchain amp gdbqemu 常见开发环境 除 qemu 外 软件开发裸机 baremetal RTOSLinuxboo 架构相关代码通用知识 如何新增

    2026年3月20日
    2
  • 邮件服务器配置「建议收藏」

    邮件服务器postfix仅提供smtp服务,不提供pop3和imap服务,主要是用发送和接收邮件的(接收到的邮件后,一般转交dovecot处理,dovecot负责将postfix转发过来的邮件保存到服务器硬盘上)dovecot仅提供pop3和imap服务,不提供smtp服务(Foxmail之类的邮箱客户端,都是通过pop3和imap来收发邮件的。…

    2022年4月14日
    190
  • Redis除了做缓存,还可以怎么用?网友:点赞功能啊

    点赞功能是目前app开发基本的功能 今天我们就来聊聊点赞、评论、收藏等这些场景的db数据库设计问题~ 1. 我们先来看看场景的需求: 显示点赞数量 判断用户是否点过赞,用于去重,必…

    2021年6月22日
    73
  • bt3硬盘安装_SD卡比U盘音质好

    bt3硬盘安装_SD卡比U盘音质好在U盘/SD卡上安装BT3教程(激活成功教程无线路由信号密码必备)其实网上关于BT3的教程很多,如果大家根据下面的教程安装不成功的话,可以再去百度一下其它的教程。前几天写过一个帖子是关于如何用BT3激活成功教程路由信号的(点我查看),为了引起关注,放在了Win区。在那个帖子里我是将

    2022年10月1日
    5
  • WinSCP拒绝访问问题

    WinSCP拒绝访问问题WinSCP登录界面的用户名与密码是Ubuntu虚拟机root用户下的用户名与密码

    2025年12月13日
    3
  • 文心一言发布时间? 文心一言什么时候推出?

    文心一言发布时间? 文心一言什么时候推出?

    2026年3月12日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号