Cute Box Cat
Click Here For Free Blog Templates!!!
Blogaholic Designs

Pages

Rabu, 06 April 2016

Semester 4: Komputasi Statistika: Syntax with R

ANALISIS KORELASI
analisis_korelasi=function(X,Y)
{
n=length(X)
sum_xy=t(X)%*%Y
sum_x=sum(X)
sum_y=sum(Y)
sum_xkuadrat=t(X)%*%X
sum_kuadratx=sum_x^2
sum_ykuadrat=t(Y)%*%Y
sum_kuadraty=sum_y^2
r=(n*sum_xy-sum_x*sum_y)/(sqrt(n*sum_xkuadrat-sum_kuadratx)*sqrt(n*sum_ykuadrat-sum_kuadraty))
R_square=r^2
cat("nilai korelasi=",r,"\n")
cat("nilai determinasi =",r^2,"\n")
cat("nilai R-square dapat diartikan bahwa kira-kira",R_square*100,"persen
variasi harga-harga Y disebabkan karena hubungannya dengan variabel X\n")
}

#Contoh
x <- c(44.4, 45.9, 41.9, 53.3, 44.7, 44.1, 50.7, 45.2, 60.1)
y <- c( 2.6, 3.1, 2.5, 5.0, 3.6, 4.0, 5.2, 2.8, 3.8)
analisis_korelasi(x,y)

EDA
plot.eda=function(x)
{
win.graph()#Membuka jendela gambar baru
par(mfrow = c(2, 2))#Membagi jendela menjadi 2 baris dan 2 kolom
hist(x)#Membuat histogram
boxplot(x)#Membuat boxplot
iqd <- summary(x)[5] - summary(x)[2]#Jarak antar kuartil
plot(density(x, width = 2 * iqd), xlab = "x", ylab
= "densitas", type = "l")#membuat plot densitas
qqnorm(x)#Membuat plot quantile normal
qqline(x)#Membuat garis quantile normal
}

deskriptif=function(x)
{
n=length(x)#banyaknya observasi
mean=summary(x)[4]
sd=sqrt(var(x))
cat("--------------------------------------\n")
cat("Banyaknya Observasi=",n,"\n")
cat("Rata-rata=",mean,"\n")
cat("Standar Deviasi=",sd,"\n")
cat("--------------------------------------\n")
plot.eda(x)#memanggil fungsi plot.eda
}

REGRESI
regresi_linier=function(x,y)
{
n=length(y)#banyak pengamatan
x0=rep(1,n)#menyiapkan elemen konstanta
X=cbind(x0,x)#matriks gabungan
beta=solve(t(X)%*%(X))%*%t(X)%*%y
ytopi=X%*%beta
error=y-ytopi
sse=t(error)%*%error
mse=sse/n
cat("============================================\n")
cat("         Analisis Regresi Linier \n")
cat("============================================\n")
cat("Koefisien Regresi:\n")
beta
cat("Nilai Prediksi:\n")
ytopi
cat("MSE=",mse,"\n")
}

TABEL DENSITAS CHI SQUARE
x1<-seq(-5,5,by=.01) ## membuat barisan dari -5 smp 5 dengan jarak 0.01
x2<-seq(0,40,by=.01) ## membuat barisan dari 0 smp 40 dengan jarak 0.01
y1<-dnorm(x1) ##menghitung densitas normal baku dari x1
y2<-dchisq(x2,df=4)##menghitung densitas chisquare dgn df=4 dari nilai x2
z1<-pnorm(x1)
z2<-pchisq(x2,df=4)
win.graph()
par(mfrow=c(2,2))
plot(x1,y1,type="l",xlab="Quantile Normal Standar",
  ylab="Densitas Normal Standar")
plot(x1,z1,type="l",xlab="Quantile Normal Standar",
  ylab = "P Kum Normal Standar")
plot(x2,y2,type="l",xlab="Quantile ChiSquare 
  df=4",ylab ="densitas Chisquare ")
plot(x2,z2,type="l",xlab="Quantile ChiSquare 
  df=4",ylab = "P Kum Chisquare df=4")

#Mencari nilai tabel normal baku
qnorm(0.95)#alfa 5%

#Mencari signifikansi
1-pnorm(1.8)#stat hitung misal=1.8

x=rnorm(100)
x=sort(x)
y=dnorm(x)
win.graph()
plot(x,y)
plot(x,y,type="l")

## Membuat Tabel Distribusi Chi Square
tabel.chisquare=function(bb,ba,alfa1,alfa2)
{
cat("========================================================\n")
cat(" Tabel Chisquare dengan alfa1:",alfa1,"dan alfa2:",alfa2,"\n")
cat("========================================================\n")
x=seq(bb,ba,by=1)
n=length(x)
p.kum1=rep(0,n)
p.kum2=rep(0,n)
for (i in 1:n) {
p.kum1[i]=qchisq(alfa1,x[i])
p.kum2[i]=qchisq(alfa2,x[i])
}
tabel=matrix(c(x,p.kum1,p.kum2),ncol=3)
colnames(tabel)=c("df","peluang kumulatif1","peluang kumulatif2")
print(tabel)
}
tabel.chisquare=function(0,20,0.025,0.05)

TABEL DISTRIBUSI NORMAL
## Membuat Tabel Distribusi Normal
tabel.normal=function(bb,ba,delta,mu=0,sigma=1)
{
cat("========================================================\n")
cat(" Tabel Normal dengan mu:",mu, "standar deviasi:",sigma,"\n")
cat("========================================================\n")
x=seq(bb,ba,by=delta)
n=length(x)
p.t=rep(0,n)
p.kum=rep(0,n)
for (i in 1:n) {
p.kum[i]=pnorm(x[i],mu,sigma)
}
tabel=matrix(c(x,p.kum),ncol=2)
colnames(tabel)=c("quantile","Kumulatif")
print(tabel)

}

Materi by Dosen Komputasi Statistika, Statistika Undip

0 komentar:

Posting Komentar