
图1是我的数据,目的是比较3组的CA水平是否不同。
我需要检查数据的正态性,按照下面的代码我应该跑出来图2这样的Q-Q图
#拆分数据
mydata1<-subset(mydata, mydata$group==1) #按组生成数据子集1
mydata2<-subset(mydata, mydata$group==2) #按组生成数据子集2
mydata3<-subset(mydata, mydata$group==3) #按组生成数据子集3
tapply(mydata$CA,mydata$group,summary)
tapply(mydata$CA,mydata$group,is.na)
#绘制Q-Q图
par(mfrow = c(1, 3))
qqnorm(mydata1$CA, main="<2")
qqline(mydata1$CA)
qqnorm(mydata2$CA, main="2~3")
qqline(mydata2$CA)
qqnorm(mydata3$CA, main=">3")
qqline(mydata3$CA)

我用了一个tapply函数把代码整合如下,按道理说应该也跑出一样的数据,但结果如图5所示,我不知道哪里出现问题了。
par(mfrow=c(1,3))
tapply(mydata$CA,mydata$group,qqnorm)
tapply(mydata$CA,mydata$group,qqline)

group=1以及group=2这两组的Q-Q图没有添加上趋势线