引言
本学期也开了一门多元统计分析课程,也趁机想把课后上机题实现一遍,以增强理解。
教材使用的是约翰逊的《多元统计分析》第六版,中英文版教材、数据集、讲义见
还参考了王斌会老师的《多元统计分析及R语言建模》
本文内容主要为第4章多元正态分布的上机题,图略。
[rmd文档见](http://pan.baidu.com/s/1ntkuXQT)
可以直接用Rstudio打开(之前先安装knitr包)
4.28
data_4.28<-read.table("E:\\研究生\\应用多元统计\\JohnsonWichern Data sets\\T1-5.DAT")
#正态Q-Q图
qqnorm(data_4.28$V2)
#正态性检验
#原始数据排序
new_data<-sort(data_4.28$V2)
length(new_data)
#对应概率值
prob<-function(i,n=42){
#构建一个概率值的函数
return((i-0.5)/n)
}
all_pro<-sapply(1:42,prob)#所有概率值
#对应的标准正态分位数
all_q<-qnorm(all_pro)
#Q-Q图的相关系数
rq<-cor(new_data,all_q)
#由于Q-Q图的相关系数rq为0.9693258,小于表4-2中n=40对应的临界点,所以拒绝正态性假设。
4.29
#(a)
#计算样本协方差矩阵
s<-cov(data_4.28[,5:6])
#s的逆
s_solve<-solve(s)
x_bar<-apply(data_4.28[,5:6],MARGIN=2,mean)#两列平均数
x_bar<-matrix(as.vector(x_bar),42,2,by=2)
two_col<-t(data_4.28[,5:6]-x_bar)#两列x-x_bar
#计算所用统计距离dis
dis<-c()
for(i in 1:length(two_col[1,])){
dis[i]<-t(two_col[,i])%*%s_solve%*%two_col[,i]
}
####################################
#(b)