当前位置: 首页 > news >正文

R实验 方差分析

实验目的:

掌握单因素方差分析的思想和方法;

掌握多重均值检验方法;

掌握多个总体的方差齐性检验;

掌握Kruskal-Wallis秩和检验的思想和方法;

掌握多重Wilcoxon秩和检验的思想和方法。

实验内容:

(习题7.1)进行一次试验,当缓慢旋转的布面轮子受到磨损时,比较3种布上涂料的磨损量。对每种涂料类型试验10个涂料样品,记录每个样品直到出现可见磨损时的小时数,数据由下表给出(数据存放在paint.data文件中)。试用单因素方差分析方法分析:这3种涂料直至磨损明显可见的平均时间是否存在显著差异?如果存在,请做多重T检验,分析哪种涂料之间存在显著差异。

涂料

磨损小时数

A

148

76

393

520

236

134

55

166

415

153

B

513

264

433

94

535

327

214

135

280

304

C

335

643

216

536

128

723

258

380

594

465

三种涂料的磨损数据

解:

(1)这3种涂料直至磨损明显可见的平均时间是否存在显著差异?

提出假设:

H0:3种涂料直至磨损明显可见的平均时间存在显著差异

H1:3种涂料直至磨损明显可见的平均时间存在显著差异

源代码及运行结果:(复制到此处,不要截图)

> x<-scan("C:\\Users\\黄培滇\\Desktop\\R语言生物统计学\\chap07\\paint.data")Read 30 items> A<-factor(rep(1:3,c(10,10,10)))> paint.aov<-aov(x~A)> summary(paint.aov)

            Df Sum Sq Mean Sq F value Pr(>F)  

A            2 198772   99386   3.482 0.0452 *

Residuals   27 770671   28543                 

---

Signif. codes:  

0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

结论:P值(0.0452<0.05),拒绝原假设,即3种涂料直至磨损明显可见的平均时间存在显著差异。

(2)如果存在,请做多重T检验,分析哪种涂料之间存在显著差异?

提出假设:

H0:μi=μj i,j=1,2,3,i≠j

H1:μi≠μj i,j=1,2,3,i≠j

源代码及运行结果:(复制到此处,不要截图)

> x<-scan("C:\\Users\\黄培滇\\Desktop\\R语言生物统计学\\chap07\\paint.data")> A<-factor(rep(1:3,c(10,10,10)))> tapply(x,A,mean)

    1     2     3

229.6 309.9 427.8

> pairwise.t.test(x,A)

Pairwise comparisons using t tests with pooled SD

data:  x and A

  1     2    

2 0.297 -    

3 0.042 0.261

P value adjustment method: holm

结论:由结果得出,A涂料与B涂料有显著性差异和C涂料没有显著性差异,B涂料与C涂料有显著性差异。

(习题7.2)用于清洁金属部件有3种有机溶剂:芬芳剂、氯烷和酯类。下表(数据存放在solvent.data文件中)给出了这3种溶剂吸附比的测试结果,能否根据这组数据分析出这3种溶剂的吸附比是否存在显著差异?如果存在,请做多重T检验,分析哪种有机溶剂之间存在显著差异。

溶剂

摩尔分数

芬芳剂

1.06

0.79

0.82

0.89

1.05

0.95

0.65

1.15

1.12

氯烷

1.58

1.45

0.57

1.16

1.12

0.91

0.83

0.43

酯类

0.29

0.06

0.44

0.61

0.55

0.43

0.51

0.10

0.34

0.53

0.06

0.09

0.17

0.60

0.17

三种溶剂吸附比数据(单位:摩尔分数)

解:

(1)这3种溶剂的吸附比是否存在显著差异?

提出假设:

H0:3种溶剂的吸附比存在显著差异

H1:3种溶剂的吸附比存在显著差异

源代码及运行结果:(复制到此处,不要截图)

> solvent<-data.frame(x<-scan("C:\\Users\\黄培滇\\Desktop\\R语言生物统计学\\chap07\\solvent.data"),+                     A<-factor(rep(1:3,c(9,8,15))))

Read 32 items

> solvent.aov<-aov(x~A,data = solvent)> summary(solvent.aov)

            Df Sum Sq Mean Sq F value   Pr(>F)    

A            2  3.305  1.6527   24.51 5.86e-07 ***

Residuals   29  1.955  0.0674                     

---

Signif. codes:  

0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

结论:P值远小于0.01,因此拒绝原假设,即3种溶剂的吸附比存在显著差异

(2)如果存在,请做多重T检验,分析哪种有机溶剂之间存在显著差异?

提出假设:

H0:μi=μj i,j=1,2,3,i≠j

H1:μi=μj i,j=1,2,3,i≠j

源代码及运行结果:(复制到此处,不要截图)

> attach(solvent)

The following objects are masked from solvent (pos = 3):

    A....factor.rep.1.3..c.9..8..15...,

    x....scan..C...Users..黄培滇..Desktop..R语言生物统计学..chap07..solvent.data..

> tapply(x,A,mean)

        1         2         3

0.9422222 1.0062500 0.3300000

> pairwise.t.test(x,A)

Pairwise comparisons using t tests with pooled SD

data:  x and A

  1       2      

2 0.62    -      

3 9.8e-06 5.5e-06

P value adjustment method: holm

结论:由结果得出,芬芳剂与氯烷没有显著性差异,而与酯类有显著性差异;氯烷与酯类没有显著性差异。

(习题7.3)对习题7.2的数据做正态性检验和方差齐性检验,试分析:使用方差不同模型(如oneway.test()函数)和方差相同模型(如aov()函数)哪个更合理?

解:

(1)正态性检验

提出假设:

H0:a试剂服从正态性,a=1,2,3

H1:a试剂不服从正态性,a=1,2,3

源代码及运行结果:(复制到此处,不要截图)

>#直接引用上题构建好的数据表

> with(solvent,tapply(x,A,shapiro.test))

$`1`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.9508, p-value = 0.6989

$`2`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.96815, p-value = 0.8831

$`3`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.89092, p-value = 0.06923

结论:从计算结果得出,3组数据服从正态性

(2)方差齐性检验

提出假设:

H0:数据服从方差齐性

H1:数据不服从方差齐性

源代码及运行结果:(复制到此处,不要截图)

> #直接引用构建好的solvent数据表> bartlett.test(x~A,data = solvent)

Bartlett test of homogeneity of variances

data:  x by A

Bartlett's K-squared = 6.7779, df = 2, p-value =

0.03374

结论:P值(0.0337<0.05),拒绝原假设,即数据不服从方差齐性。

(3)使用方差不同模型(如oneway.test()函数)和方差相同模型(如aov()函数)哪个更合理?

基于本题的情况即满足正态性,但不满足方差齐性,oneway,test()函数更合适。

习题7.4)使用方差不同模型(oneway.test()函数)和秩检验方法(kruskal.test()函数)对习题7.1中的数据进行分析是否得到与习题7.1相同的结果?如果得到的结论不同,哪个结论更合理?试对数据做正态性检验(如shapiro.test()函数)和方差齐性检验(如bartlett.test()函数)来说明这一问题。

解:

(1)使用方差不同模型(oneway.test()函数)分析:这3种涂料直至磨损明显可见的平均时间是否存在显著差异?

提出假设:

H0:3种涂料直至磨损明显可见的平均时间存在显著差异

H1:3种涂料直至磨损明显可见的平均时间存在显著差异

源代码及运行结果:(复制到此处,不要截图)

> paint<-data.frame(x<-scan("C:\\Users\\黄培滇\\Desktop\\R语言生物统计学\\chap07\\paint.data"),+                     A<-factor(rep(1:3,c(10,10,10))))

Read 30 items

> oneway.test(x~A,data = paint)

One-way analysis of means (not assuming equal

variances)

data:  x and A

F = 2.9699, num df = 2.000, denom df = 17.775,

p-value = 0.07713

结论:P值(0.0771>0.05),接受原假设,即3种涂料直至磨损明显可见的平均时间存在显著差异

(2)使用秩检验方法(kruskal.test()分析:这3种涂料直至磨损明显可见的平均时间是否存在显著差异?

提出假设:

H0:3种涂料直至磨损明显可见的平均时间存在显著差异

H1:3种涂料直至磨损明显可见的平均时间存在显著差异

源代码及运行结果:(复制到此处,不要截图)

> kruskal.test(x~A,data = paint)

Kruskal-Wallis rank sum test

data:  x by A

Kruskal-Wallis chi-squared = 5.4684, df = 2, p-value

= 0.06495

结论:P值(0.06495>0.05),接受原假设,即3种涂料直至磨损明显可见的平均时间存在显著差异

(3)如果得到的结论不同,哪个结论更合理?试对数据做正态性检验(如shapiro.test()函数)和方差齐性检验(如bartlett.test()函数)来说明这一问题。

> with(paint,tapply(x,A,shapiro.test))

$`1`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.87975, p-value = 0.1296

$`2`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.95268, p-value = 0.7003

$`3`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.97137, p-value = 0.9033

> bartlett.test(x~A,data = paint)

Bartlett test of homogeneity of variances

data:  x by A

Bartlett's K-squared = 0.79406, df = 2, p-value =

0.6723

由计算结果可知,习题7.1数据服从正态性要求与方差齐性要求。因此采用方差分析更为合适

(习题7.6)考查不同职业人群对心理疾病原因的认识,现找到A、B、C3种职业的人员各10名,这30个人用笔试的方式回答心理疾病原因的知识问卷,测试分数如下表所示(数据存放在staff.data文件中)。(1)使用Kruskal-Walis秩和检验,分析这3种职业人员平均测试分数是否有显著差异;(2)使用正态性检验和方差齐性检验的方法来分析Kruskal-Wallis秩和检验的合理性。

职业

测试分数

A

62

60

60

25

24

23

20

13

12

6

B

62

62

24

24

22

20

19

10

8

8

C

37

31

15

15

14

14

14

5

3

2

3种职业人员心理疾病的测试分析

解:

(1)使用Kruskal-Walis秩和检验,分析这3种职业人员平均测试分数是否有显著差异?

提出假设:

H0:3种职业人员平均测试分数没有显著差异

H1:3种职业人员平均测试分数有显著差异

源代码及运行结果:(复制到此处,不要截图)

> staff<-data.frame(x<-scan("C:\\Users\\黄培滇\\Desktop\\R语言生物统计学\\chap07\\staff.data"),+                     A<-factor(rep(1:3,c(10,10,10))))

Read 30 items

> kruskal.test(x~A,data = staff)

Kruskal-Wallis rank sum test

data:  x by A

Kruskal-Wallis chi-squared = 3.2535, df = 2, p-value

= 0.1966

结论:P值(0.1966>0.05)接受原假设,即3种职业人员平均测试分数没有显著差异

(2)使用正态性检验和方差齐性检验的方法来分析Kruskal-Wallis秩和检验的合理性。

> with(staff,tapply(x,A,shapiro.test))

$`1`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.81494, p-value = 0.02201

$`2`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.76284, p-value = 0.005115

$`3`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.86148, p-value = 0.07944

> bartlett.test(x~A,data = staff)

Bartlett test of homogeneity of variances

data:  x by A

Bartlett's K-squared = 3.6228, df = 2, p-value =

0.1634

计算结果,可以得出,题目中第1、2组数据不满足正态性要求,而数据满足方差齐性要求,因此Kruskal-Wallis秩和检验符合该题目。

(习题7.7)生物学家认为,河流中的富营养水注入海湾后,会导致浮游生物赖以生存的藻类快速生长,细菌则以浮游生物的排泄物和死藻类为主,消耗了水中的氧。为验证是否有这种情况发生,现测试某河流入海口开始的4个海洋区域中的平均溶解氧含量(见下表,.数据存放在sea.data文件中)。(1)对数据做正态性检验和方差齐性检验;(2)4个海洋区域溶解氧含量是否有显著差异?(3)如果有差异,哪些区域之间有差异?(注:请根据(1)的结果合理选择检验的方法)

距入海口距离

溶解氧含量

1km

1

5

2

1

2

2

4

3

0

2

5km

4

8

2

3

8

5

6

4

3

3

10km

20

26

24

11

28

20

19

19

21

24

20km

37

30

26

24

41

25

36

31

31

33

离入海口处4个距离的平均溶解氧含量(单位:mg/L)

解:

(1)对数据做正态性检验和方差齐性检验

①正态性检验。提出假设:

H0:a km数据服从正态性,a = 1,5,10,20

H1:a km数据不服从正态性,a = 1,5,10,20

源代码及运行结果:(复制到此处,不要截图)

> sea<-data.frame(x<-scan("C:\\Users\\黄培滇\\Desktop\\R语言生物统计学\\chap07\\sea.data"),+ A<-factor(rep(1:4,c(10,10,10,10))))

Read 40 items

> with(sea,tapply(x,A,shapiro.test))

$`1`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.93644, p-value = 0.5141

$`2`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.88391, p-value = 0.1446

$`3`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.92543, p-value = 0.4045

$`4`

Shapiro-Wilk normality test

data:  X[[i]]

W = 0.95791, p-value = 0.7618

结论:由计算结果可以得出,数据都服从正态性。

②方差齐性检验。提出假设:

H0:数据服从方差齐性

H1:数据不服从方差齐性

源代码及运行结果:(复制到此处,不要截图)

> bartlett.test(x~A,data = sea)

Bartlett test of homogeneity of variances

data:  x by A

Bartlett's K-squared = 17.17, df = 3, p-value =

0.000652

结论:P值小于0.05,拒绝原假设,即数据不服从方差齐性

(2)4个海洋区域溶解氧含量是否有显著差异?(用单因素方差分析还是Kruskal-Wallis检验?)提出假设:

由于数据服从正态性,但不满足方差齐性,因此采用单因素方差分析中的oneway.test()函数

H0:4个海洋区域溶解氧含量显著差异

H1:4个海洋区域溶解氧含量有显著差异

源代码及运行结果:(复制到此处,不要截图)

> oneway.test(x~A,data = sea)

One-way analysis of means (not assuming equal

variances)

data:  x and A

F = 118.54, num df = 3.000, denom df = 18.315,

p-value = 3.503e-12

结论:P值远小于0.01,拒绝原假设,即4个海洋区域溶解氧含量有显著差异

(3)如果有差异,哪些区域之间有差异?

> tapply(x,A,mean)

   1    2    3    4

 2.2  4.6 21.2 31.4

> pairwise.t.test(x,A)

Pairwise comparisons using t tests with pooled SD

data:  x and A

  1       2       3      

2 0.17    -       -      

3 1.8e-12 5.2e-11 -      

4 < 2e-16 < 2e-16 1.8e-06

P value adjustment method: holm

计算结果,得出1区域和2区域之间没有显著性差异与其他区域有显著性差异,而其余区域彼此之间都纯在显著性差异。

思考:

方差分析使用的前提条件有哪三个?

方差齐性

正态性

独立性

设因素Ar个水平,所有样本数据的总数为n,则组间平方和SA的自由度是多少?组内平方和SE的自由度是多少?

组间平方和自由度为r-1,组内平方和自由度为r-n。

R语言中,要给出完整的方差分析表,需要用到哪两个函数?

aov() 与 summary()

方差分析的统计量F=( A )。

A. SA/SE   B. MSA/MSE  C. MSE/MSA D. SE/SA 

所有样本数据与所有样本数据的均数之差的平方和称为___总平方和________。

当数据只满足正态性,但不满足方差齐性时,可用_____oneway.test()____________函数做方差分析。

单因素方差分析时,如果拒绝原假设,想进一步了解到底哪些总体之间的均值有显著性差异,可以做多重T检验,R软件中,用于此检验的函数是_____paiewise.t.test()________。

Kruskal-Wallis秩和检验是用于______数据既不满足正态性要求,又不满足方差齐性要求________情况下的非参数检验。

Kruskal-Wallis秩和检验时,如果拒绝原假设,想进一步了解到底哪些总体之间的有显著性差异,由于此时没有正态性和方差齐性的条件,因此需要做多重Wilcoxon检验,R软件中,用于此检验的函数是____pairwise.wilcox.test()_________。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【运维项目经历|024】MySQL性能优化与监控平台
  • 神奇动物在哪里?斯洛文尼亚旅游之野生动物寻踪
  • 2024年郫都区区级农业生产社会化服务重点服务组织评定申报条件材料、程序要求
  • Python筑基之旅-MySQL数据库(四)
  • Java+IDEA+SpringBoot药物不良反应ADR智能监测系统源码 ADR智能化监测系统源码
  • python数据分析——数据可视化(图形绘制)
  • 【BI 可视化插件】怎么做? 手把手教你实现
  • 基于springboot+html的二手交易平台(附源码)
  • Android软件渲染流程
  • 结构体常见问题
  • 项目引用图片后乱码?
  • 苹果WWDC 2024或将推出AI生成的表情符号并宣布与OpenAI的合作|TodayAI
  • vue小记——上传图片小组件
  • 51单片机的最小系统详解
  • 全球点赞最高的人颜廷利:真正的人生目标是什么
  • [译] 理解数组在 PHP 内部的实现(给PHP开发者的PHP源码-第四部分)
  • 【407天】跃迁之路——程序员高效学习方法论探索系列(实验阶段164-2018.03.19)...
  • 【跃迁之路】【735天】程序员高效学习方法论探索系列(实验阶段492-2019.2.25)...
  • 5分钟即可掌握的前端高效利器:JavaScript 策略模式
  • express + mock 让前后台并行开发
  • git 常用命令
  • HTTP传输编码增加了传输量,只为解决这一个问题 | 实用 HTTP
  • javascript 哈希表
  • jquery cookie
  • Lsb图片隐写
  • Phpstorm怎样批量删除空行?
  • vue-cli3搭建项目
  • 对象引论
  • 解决iview多表头动态更改列元素发生的错误
  • 力扣(LeetCode)56
  • 浅谈Kotlin实战篇之自定义View图片圆角简单应用(一)
  • 物联网链路协议
  • 验证码识别技术——15分钟带你突破各种复杂不定长验证码
  • 一加3T解锁OEM、刷入TWRP、第三方ROM以及ROOT
  • ​LeetCode解法汇总2670. 找出不同元素数目差数组
  • # 利刃出鞘_Tomcat 核心原理解析(七)
  • #Linux杂记--将Python3的源码编译为.so文件方法与Linux环境下的交叉编译方法
  • (2024)docker-compose实战 (9)部署多项目环境(LAMP+react+vue+redis+mysql+nginx)
  • (4.10~4.16)
  • (C#)if (this == null)?你在逗我,this 怎么可能为 null!用 IL 编译和反编译看穿一切
  • (回溯) LeetCode 77. 组合
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (每日持续更新)jdk api之StringBufferInputStream基础、应用、实战
  • (十)c52学习之旅-定时器实验
  • .NET core 自定义过滤器 Filter 实现webapi RestFul 统一接口数据返回格式
  • .net 反编译_.net反编译的相关问题
  • .NET 跨平台图形库 SkiaSharp 基础应用
  • .net(C#)中String.Format如何使用
  • .net6 core Worker Service项目,使用Exchange Web Services (EWS) 分页获取电子邮件收件箱列表,邮件信息字段
  • .net中生成excel后调整宽度
  • ??javascript里的变量问题
  • ??Nginx实现会话保持_Nginx会话保持与Redis的结合_Nginx实现四层负载均衡
  • @Autowired @Resource @Qualifier的区别
  • @EnableWebSecurity 注解的用途及适用场景
  • @FeignClient 调用另一个服务的test环境,实际上却调用了另一个环境testone的接口,这其中牵扯到k8s容器外容器内的问题,注册到eureka上的是容器外的旧版本...