在R语言中如何画卡方分布图、t分布图、F分布图?

Python018

在R语言中如何画卡方分布图、t分布图、F分布图?,第1张

在这里给你举一个实例,下面我要作出数据a的三个分布图

a<-rnorm(100)

#卡方分布图

b<-dchisq(a,1) #变换为卡方分布

hist(b)

#t分布图

c<-dt(a,1,0)#变换为t分布

hist(c)

#F分布图

d<-df(a,1,1,0)#变换为f分布

hist(f)

卡方分布(non-central)Chi-Squared Distribution,chisq

它广泛的运用于检测数学模型是否适合所得的数据,以及数据间的相关性。数据并不需要呈正态分布

k个标准正态变量的平方和即为自由度为k的卡方分布。

quantile function 分位数函数 qchisq(p, df, ncp=0, lower.tail = TRUE, log.p = FALSE)

其中df为degrees of freedom。ncp是non-centrality parameter (non-negative).ncp=0时是central卡方分布,ncp不为0时,表示这个卡方分布是由非标准正态分布组合而成,ncp=这些正态分布的均值的平方和。

我们想知道喝牛奶对感冒发病率有没有影响,以下为数据统计的四格表:

从上文中我们通过卡方计算公式手动计算出P在0.1到0.5,说明牛奶对感冒发病率没有影响。

下面我们通过R计算一下具体p直:

x<-matrix(c(43,28,96,84),ncol=2,nrow=2)

chisq.test(x)$p.value

此外出来2X2联表,还可以计算一维表(自由度为个数),例如下面:

判断5种品牌啤酒的爱好者有无显著差异:

P值越大,支持原假设的证据就越强,给定显著性水平α(取0.05), 当P值小于α时,就拒绝原假设。