norm.2v<-function(x,y,m1=0,m2=0,v11=1,v12=0,v22=1) { r12<-v12/sqrt(v11*v22) a<-1/(2*pi*sqrt(v11*v22-v12^2)) b<-(v11*v22)/(2*(v11*v22-v12^2)) x11<-((x-m1)/v11) x22<-((y-m2)/v22) x12<-2*r12*x11*x22 f<-a*exp(-b*(x11^2+x22^2-x12)) return(f) } myplot.3d<-function(m1=0,m2=0,v11=1,v12=0,v22=1) { v<-max(v11,v22) x<-seq(m1-4*v,m1+4*v,by=0.1) y<-seq(m2-4*v,m2+4*v,by=0.1) M<-matrix(c(v11,v12,v12,v22),ncol=2) Minv<-solve(M) z<-outer(x,y,norm.2v,m1,m2,Minv[1,1],Minv[1,2],Minv[2,2]) win.graph() persp(x,y,z) } Coba jalankan fungsi tersebut dengan mengetik myplot.3d() Berikut ini contoh program untuk melakukan prosedur uji normal k-variat dengan contoh data diambil dari Johnson, exercises 1.4. Bandingkan hasil yang diperoleh dengan hasil yang diberikan oleh Johnson. mnorm.tst<-function(x) { rata2<-apply(x,2,mean) mcov<-var(x) ds<-sort(mahalanobis(x,center=rata2,cov=mcov)) n<-length(ds) p<-(1:n-0.5)/n chi<-qchisq(p,df=ncol(x)) win.graph() plot(ds,chi,type="p") return(ks.gof(ds,distribution="chisq",df=ncol(x))) } x<-c(26.7,38.4,19.2,20.6,18.9,14.8,19,14.2,13.7,7.7) y<-c(3.3,2.4,1.7,1,.9,1,2.7,.8,1.1,.2) A<-matrix(c(x,y),ncol=2) mnorm.tst(A) Silakan kalau mau download lebih lengkapnya: Fungsi Distribusi Peluang Multivariat - file MS Word via Ziddu
atau
Arsyil Hendra Saputra, seorang statistikawan Semarang. Mahasiswa S1 Statistika UNDIP. Sebagai seorang Statistikawan, tidak menutup diri untuk membantu sesama dalammemecahkan permasalahan statistika. Bagi kamu yang pengin bertanya alias membahas sebuah persoalan statistik dengan saya, monggo, silakan tanyakan saja, dapat lewat blog ini atau facebook atau YM. Terima kasih. CP: 085740562043
0 komentar:
Posting Komentar