网站首页 > 基础教程 正文
例子:利用四种不同配方的材料A1、A2、A3、A4生产出来的元件,测得其使用寿命如下图所示。问:四种不同配方下元件的使用寿命有无显著差异?
R语言中的aov()函数提供了方差分析的计算,aov()函数的使用方式如下:
aov(formula,data=NULL)
其中formula是方差分析的公式,data是数据框。另外,可使用summary()列出方差分析表的详细信息。
接下来用数据框的格式输入数据,调用aov()函数计算方差分析,用summary()提取方差分析的信息。
> lamp<-data.frame(
+ X=c(1600, 1610, 1650, 1680, 1700, 1700, 1780, 1500, 1640, 1400, 1700, 1750, 1640, 1550, 1600, 1620, 1640, 1600, 1740, 1800, 1510, 1520, 1530, 1570, 1640, 1600),
+ A=factor(c(rep(1,7),rep(2,5),rep(3,8),rep(4,6)))
+ )
> lamp.aov<-aov(X~A,data = lamp)
> summary(lamp.aov)
Df Sum Sq Mean Sq F value Pr(>F)
A 3 49212 16404 2.166 0.121
Residuals 22 166622 7574
summary()打印出的内容,如果再加上一个总和计算,被称为方差分析表。其中Df表示自由度,Sum Sq表示平方和,Mean Sq表示均方,F value表示F值,Pr(>F)表示P值,A就是因素A,Residuals是残差,即误差。这里没有列出总和计算,需要单独编写一个程序“anova.R”,代码如下:
anova.tab<-function(fm){
tab<-summary(fm)
k<-length(tab[[1]])-2
temp<-c(sum(tab[[1]][,1]),sum(tab[[1]][,2]),req(NA,k))
tab[[1]]["Total",]<-temp
tab
}
使用此程序可以得到一份完整的方差分析表:
> source('anova.tab.R')
> anova.tab(lamp.aov)
Df Sum Sq Mean Sq F value Pr(>F)
A 3 49212 16404 2.166 0.121
Residuals 22 166622 7574
Total 25 215835
方差分析表的具体格式如下:
绘制箱线图
>plot(lamp$X~lamp$A)
无论是从p值还是从箱线图都可以说明:四种材料生产出的元件的平均寿命无显著差异。
猜你喜欢
- 2024-10-12 R数据分析:倾向性评分匹配实例操作
- 2024-10-12 要为学习神经网络奠定基础,你需要认真读读R深度学习
- 2024-10-12 怎样快速入门Arduino?(二十三)—TCS3200颜色传感器
- 2024-10-12 把数据输入R之后,如何进行简单的操作(一)
- 2024-10-12 聚类分析5—物种集合-数量生态学:R语言的应用 第四章
- 2024-10-12 一文读懂R中的探索性数据分析(附R代码)
- 2024-10-12 从0开始自制解释器——添加对括号的支持
- 2024-10-12 常见编程语言:Go:Go语言函数与方法
- 2024-10-12 Python基础之变量、循环、函数(二)
- 2024-10-12 R语言中使用scan函数从键盘获取数据的方法
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)