r语言x11:R语言十八讲十二
前面讲到了回归分析以及回归诊断,我们知道回归分析的两个用途,一是用作预测,二是用作分类,即解释作用.如果我们稍作留意便可以注意到,回归分析的自变量,包括因变量都是数值型的,那么,如果自变量是因子型的,我们还可以做一些分析吗? 另外,我们在回归分析之前还讲到了假设检验,T检验,如果你不记得了,可以去看看第九讲.我们知道T检验是检验两个总体是否有显著差异,那么,如果总体变成了3个甚至是四个,我们该怎么检验这四个总体是否有显著差异了?学完这一节,你将得到答案.
方差分析:主要是做组别差异分析.
在学习方差分析之前,我们先看看我们的数据在数据库里是怎么存放的,
行数 | 字段Y(数值型) | 字段X(因子型) | 字段Z(因子型) |
1 | 10 | a | 1 |
2 | 11 | b | 2 |
3 | 12 | c | 3 |
4 | 13 | a | 1 |
5 | 10 | b | 2 |
6 | 12 | c | 3 |
7 | 11 | a | 1 |
8 | 10 | b | 2 |
9 | 12 | c | 3 |
10 | |||
11 |
这是一个典型是数据框,每一列代表一个变量.有数值型的,也有因子型的,即分类变量.而我们方差分析是要做组别差异分析,那么,根据上表,我们做组别差异分析,要么是将字段y按字段x分组,要么按字段Z分组,或者按字段x和字段z分组.我们先来讲讲简单的,
现在的问题是根据x讲Y分成的三组,他们之间有显著差异吗? 这就有回到了我们的假设检验上,我们假设组别之间没有差异,也就是原假设H0: 各组总体均值都等于0
这时我们根据数学知识推理出一个统计量它服从F分布,然后求出统计量的值,计算其发生的概率,若小于给定的阈值,也就是我们的α,则拒绝原假设.(这里我们说的比较通俗,但是这种说法是不严密的,数学上并不是计算其概率,而是计算这件事以及发生比这件事更加偏离中心的概率之和,这里我们暂且理解为这件事发生的概率,并不影响理解)
上面是部分数据,接着用R实现:
方差分析给出了,一个答案,就是组别之间有没有显著差异,但是这里有三组到底是哪两组有显著差异,还是都有显著差异了?
此时我们需要两两比较,三组总共要进行3次两两比较,当组数多了之后,根据排列组合知识我们知道其两两比较的次数会变得很大,这时R有一个函数能帮我们解决这件事:
R实现:
至此,单因素方差分析已经做出了答案,但是,前面的回归分析时,我们是有假设前提的,这里方差分析也有假设前提,这里我们也需要去验证前提是否成立,分别是1.Y是否服从正态分布,这回归诊断中已经讲到了.2.Y的各组是否齐方差.这前面也讲到了怎么做.
2.单因素协方差分析
首先我们先了解一个概念,什么是协因素,假如,我们需要了解两种治疗方案是否有显著差异,这时我们找到两组病人,分别用两组治疗方案去治疗,然后去比较两组病人的康复状况,得到治疗方案是否有显著差异,但是,病人可能因为性别的差异而影响了最终结果,那么我们把性别这种因素称之为协因素,它与实验的设计没有关系,但会直接影响实验的结果,而掺加了协因素的方差分析,我们称之为协方差分析.
R实现:部分数据和代码
检验:这时除了要多检验一个假设,回归斜率想同.由下图可以看见斜率基本相同.
R实现: ancova(weight~gesttime dose,data=litter)
3.重复测量方差分析:
首先我们了解什么是重复测量,还是上面那个例子,现在由于病人数目不够分为两组,我们想了一个办法,就是同一批病人,先用A治疗方案,然后再用B治疗方案,显然同一个病人要被重复测量2次,这就是重复测量方差分析.虽然这样的设计很不科学,这里只是举例说明数目是重复测量.
4.双因素方差分析
即有两个分类变量,或者说两个因子的交叉影响变量y.
R实现:
由图可以得到各个因素的组别分布情况,由此可以得到我们想要的信息.
PPV课大数据-国内领先的大数据培训社区:http://www.ppvke.com ,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com