Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi...

19
36 Lampiran 1. Fungsi Distribusi Univariat dan Fungsi Debye Pada bagian ini akan diberikan fungsi distribusi univariat yang digunakan dan dituliskan dalam penelitian ini. Misalkan adalah peubah acak kontinu dengan fungsi distribusi 1. Lognormal dua parameter, ~ (, ). () = 1 √2 1 exp (− (ln − ) 2 2 2 ) 0 2. Weibull dua parameter, ~ (, ). () = 1 − (− ( ) ) 3. Gamma dua parameter, ~ (, ) () = Γ() −1 exp(−) 0 4. Eksponensial satu parameter, ~ () () = 1 − exp(−) Sedangkan fungsi Debye didefinisikan oleh: () = −1 0

Transcript of Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi...

Page 1: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

36

Lampiran 1. Fungsi Distribusi Univariat dan Fungsi Debye

Pada bagian ini akan diberikan fungsi distribusi univariat yang digunakan

dan dituliskan dalam penelitian ini. Misalkan 𝑋 adalah peubah acak kontinu dengan

fungsi distribusi 𝐹𝑋

1. Lognormal dua parameter, 𝑋~ 𝐿𝑜𝑔𝑛𝑜𝑟𝑚𝑎𝑙 (𝜇, 𝜎).

𝐹𝑋(𝑥) =1

𝜎√2𝜋∫

1

𝑡exp (−

(ln 𝑡 − 𝜇)2

2𝜎2) 𝑑𝑡

𝑥

0

2. Weibull dua parameter, 𝑋~ 𝑊𝑒𝑖𝑏𝑢𝑙𝑙 (𝛼, 𝛽).

𝐹𝑋(𝑥) = 1 − 𝑒𝑥𝑝 (− (𝑥

𝛽)

𝛼

)

3. Gamma dua parameter, 𝑋~ 𝐺𝑎𝑚𝑚𝑎 (𝛼, 𝛽)

𝐹𝑋(𝑥) =𝛽𝛼

Γ(𝛼)∫ 𝑡𝛼−1 exp(−𝛽𝑡) 𝑑𝑡

𝑥

0

4. Eksponensial satu parameter, 𝑋~ 𝐸𝑘𝑠𝑝𝑜𝑛𝑒𝑛𝑠𝑖𝑎𝑙 (𝜆)

𝐹𝑋(𝑥) = 1 − exp(−𝜆𝑥)

Sedangkan fungsi Debye didefinisikan oleh:

𝐷𝑘(𝛽) =𝑘

𝛽𝑘∫

𝑡𝑘

𝑒𝑡 − 1𝑑𝑡

𝛽

0

Page 2: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

37

Lampiran 2. Data kegagalan pertama komponen oil filter Mobil

NO Umur

(hari)

Penggunaan

(km)

1 127 6151

2 155 8627

3 190 5734

4 271 6723

5 359 10969

6 122 2944

7 119 4115

8 183 4782

9 240 6417

10 122 11257

11 105 10176

12 81 11084

13 84 11032

14 101 10582

15 109 9752

16 80 10194

17 76 10001

18 86 9922

19 228 10101

20 220 7714

21 181 8731

NO Umur

(hari)

Penggunaan

(km)

22 203 9247

23 178 8267

24 228 8890

25 326 11538

26 301 10935

27 203 7207

28 144 8892

29 164 12592

30 180 10872

31 291 18331

32 188 10964

33 220 9494

34 435 25320

35 131 10375

36 173 10661

37 200 11453

38 170 10152

39 125 9029

40 194 10085

41 384 20864

Page 3: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

38

Lampiran 3. Analitik Distribusi Normal

Fungsi densitas dari distribusi normal:

𝑓(𝑥) =1

√2𝜋𝜎2𝑒

−(𝑥−𝜇)2

2𝜎2

Fungsi Likelihood

𝐿 = (1

√2𝜋𝜎2)

𝑛

𝑒−

12𝜎2 ∑ (𝑥𝑖−𝜇)2𝑛

𝑖=1

𝑙𝑛(𝐿) = −𝑛 𝑙𝑛(√2𝜋) − 𝑛 𝑙𝑛 (√𝜎2) −1

2𝜎2∑(𝑥𝑖 − 𝜇)2

𝑛

𝑖=1

• Turunan terhadap 𝜇

𝜕𝑙𝑛(𝐿)

𝜕𝜇=

2

2𝜎2∑(𝑥𝑖 − 𝜇)

𝑛

𝑖=1

0 =𝑛

𝜎2(�̅� − 𝜇)

�̂� = �̅�

• Turunan terhadap 𝜎2

𝜕𝑙𝑛(𝐿)

𝜕𝜎2= −

𝑛

2𝜎2+

1

2𝜎4∑(𝑥𝑖 − 𝜇)2

𝑛

𝑖=1

0 = −𝑛

2𝜎2+

1

2𝜎4∑(𝑥𝑖 − 𝜇)2

𝑛

𝑖=1

𝑛 =1

𝜎2∑(𝑥𝑖 − 𝜇)2

𝑛

𝑖=1

𝜎2 =1

𝑛∑(𝑥𝑖 − 𝜇)2

𝑛

𝑖=1

Sehingga diperoleh estimasi parameter distribusi normal 𝜇 = �̅� dan 𝜎2 =

1

𝑛∑ (𝑥𝑖 − 𝜇)2𝑛

𝑖=1

Page 4: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

39

Lampiran 4. Contoh Uji Kecocokan Distribusi

Misal diambil lima sampel acak seperti berikut

-1.8165947 -0.6933798 0.6089710 1.3414471 0.2803393

Diasumsikan data berdistribusi normal, sehingga dapat ditentukan hipotesis:

𝐻0 : data mengikuti distribusi normal

𝐻1 : data tidak mengikuti distribusi normal

• Mencari Parameter Distribusi Marginal

Diketahui parameter untuk distribusi normal adalah 𝜇 dan 𝜎2. Dari data

diperoleh parameter:

𝜇 = �̅�

𝜇 = −0.05584 dan

𝜎2 =1

𝑛∑(𝑥𝑖 − 𝜇)2

𝑛

𝑖=1

𝜎2 = 1.2262 • Uji Kolmogorov-Smirnov

Setelah ditemukan parameternya, selanjutnya dilakukan uji kecocokan

menggunakan metode Kolmogorov-Smirnov. Uji kecocokan dapat dilihat pada

tabel dibawah ini.

𝑖 1 2 3 4 5

𝑥𝑖 -1.8165947 -0.6933798 0.6089710 1.3414471 0.2803393

𝑖

5 0.2 0.4 0.6 0.8 1

𝑖 − 1

5 0 0.2 0.4 0.6 0.8

�̂�(𝑥𝑖) 0.2138635 0.8796348 0.0628187 0.2415645 0.1854257

𝑖

5− �̂�(𝑥𝑖) -0.0138635 -0.4796348 0.5371813 0.5584355 0.8145743

�̂�(𝑥𝑖) −𝑖 − 1

5 0.2138635 0.6796348 -0.3371813 -0.3584355 -0.6145743

𝐷𝑛− = max

𝑖=1,2,…,𝑛[

𝑖

𝑛− �̂�(𝑥𝑖)] = 0.8145743

𝐷𝑛+ = max

𝑖=1,2,…,𝑛[�̂�(𝑥𝑖) −

𝑖 − 1

𝑛] = 0.6796348

Page 5: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

40

𝐷𝑛 = 𝑚𝑎𝑥{𝐷𝑛−, 𝐷𝑛

+} = 0.8145743

Diambil nilai signifikansi 10% sehingga nilai dari batas kritis:

𝑑𝛼(𝑛−1 2⁄ + 0.11𝑛−1 2⁄ + 0.12)−1

= 1.224(5−1 2⁄ + 0.11 ∗ 5−1 2⁄ + 0.12)−1

= 1.985701

Diperoleh nilai 𝐷𝑛 kurang dari batas kritis sehingga 𝐻0 diterima atau dengan kata

lain sampel data mengikuti distribusi normal.

Page 6: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

41

Lampiran 5. Program

#START############################################################

# Analisis Model Bivariat Weibull Copula Clayton pada Data

(Marginal: Weibull & Lognormal)

library('ADGofTest')

library('copula')

graphics.off()

##################################################################

# Data

X <- read.table('data.txt')[,1]/360

Y <- read.table('data.txt')[,2]/10000

x1 <- X

y1 <- Y

##################################################################

# Distribusi Marginal

a1 = 2.6446 ; b1 = 0.5663

m1 = -0.06361; s1 = 0.37611

ks.test(x1,pweibull,a1,b1)

ad.test(x1,pweibull,a1,b1)

ks.test(y1,plnorm,m1,s1)

ad.test(y1,plnorm,m1,s1)

#Transformasi data marginal melalui fungsi distribusinya

u = pweibull(x1,a1,b1)

v = plnorm(y1,m1,s1)

dev.new()

plot(u,v)

##################################################################

#mencari korelasi Kendall's tau

kor = cor(x1,y1,method="kendall")

kor

#estimasi parameter melalui Kendall's tau

tetha = (2*kor)/(1-kor)

tetha

dataXY = cbind(x1,y1)

dataUV = cbind(u,v)

#(u^(-tetha)+v^(-tetha)-1)^(-1/tetha)

Cc = pCopula(dataUV, claytonCopula(tetha))

#Fungsi Copula atau distribusi bivariat empirik

Bivemp = function(x0,y0,data)

{

k = dim(data)[1];

H_emp = numeric(k)

for (i in 1:k)

{

H_emp[i] <- (sum(data[,1] <= x0[i] & data[,2] <=

y0[i]))/(k+1)

}

return(H_emp)

}

He = Bivemp(dataXY[,1],dataXY[,2],dataXY)#Menghitung He dari

data

He

#Menghitung sn (Statistik Cramer von Misses data)

Page 7: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

42

sn = sum((He-Cc)^2)

sn

#Simulasi Sn melalui Parametric Bootstrap

Sn_bootstrap=function(A,data)

{

Sn_sim = numeric(A)

k = dim(data)[1]

for (i in 1:A)

{

UV = rCopula(k, claytonCopula(tetha))

u = UV[,1]; x = qweibull(u,a1,b1)

v = UV[,2]; y = qlnorm(v,m1,s1)

He = Bivemp(x,y,data)

Cc = pCopula(UV, claytonCopula(tetha))

Sn_sim[i] = sum((He-Cc)^2)

}

return(Sn_sim)

}

Sn1000 = Sn_bootstrap(1000,dataXY)

dev.new()

hist(Sn1000)

p.val = sum(Sn1000>sn)/1000

p.val

m = 100

p.value = numeric(m)

kep = p.value

for(j in 1:m)

{

Sn1000 = Sn_bootstrap(1000,dataXY)

p.value[j]= sum(Sn1000>sn)/1000

kep[j] = p.value[j] >= 0.05

}

banyak_H0.ACC = sum(kep)

banyak_H0.ACC

p.val.hat = mean(p.value)

p.val.hat

sd_p.val.hat = sd(p.value)

sd_p.val.hat

#END##############################################################

#START############################################################

dev.new()

scatterhist = function(x, y, xlab="", ylab="")

{

zones=matrix(c(2,0,1,3), ncol=2, byrow=TRUE)

layout(zones, widths=c(4/5,1/5), heights=c(1/5,4/5))

xhist = hist(x, plot=FALSE)

yhist = hist(y, plot=FALSE)

top = max(c(xhist$counts, yhist$counts))

par(mar=c(3,3,1,1))

plot(x,y,col="black")

par(mar=c(0,3,1,1))

barplot(xhist$counts, axes=FALSE, ylim=c(0, top), space=0)

Page 8: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

43

par(mar=c(3,0,1,1))

barplot(yhist$counts, axes=FALSE, xlim=c(0, top), space=0,

horiz=TRUE)

par(oma=c(3,3,0,0))

mtext(xlab, side=1, line=2, outer=TRUE, adj=0,

at=.8 * (mean(x) - min(x))/(max(x)-min(x)))

mtext(ylab, side=2, line=2, outer=TRUE, adj=0,

at=(.8 * (mean(y) - min(y))/(max(y) - min(y))))

}

X <- read.table('data.txt')[,1]/360

Y <- read.table('data.txt')[,2]/10000

x <- X

y <- Y

scatterhist(x,y,xlab="x1", ylab="y1")

dev.new()

plot(x,y)

#END##############################################################

#START############################################################

# Data

X <- read.table('data.txt')[,1]/360

Y <- read.table('data.txt')[,2]/10000

x <- X

y <- Y

# Copula dalam (x,y)

# plot Copula

library('rmutil')

library('copula')

x <- seq(0.065, max(x), length = 100)

y <- seq(0.3, max(y), length = 100)

t <- 0.1930301

# estimasi distribusi marginal data menyesuaikan

# Parameter Copula

a1 = 2.6446 ; b1 = 0.5663

m1 = -0.06361; s1 = 0.37611

#Transformasi data marginal melalui fungsi distribusinya

u = pweibull(x,a1,b1)

v = plnorm(y,m1,s1)

#function(u,v) { ((1+(or-1)*(u+v))-

Cuv <- function(u,v)

{ pCopula(cbind(u,v), claytonCopula(t)) }

z <- outer(u,v,Cuv)

dev.new()

persp(x,y,z,theta = 30,phi = 30,expand = 0.5,col = "lightblue",

ltheta = 120,shade = 0.75,ticktype = "detailed",

xlab = "x",ylab = "y",zlab = "C(F(x),G(y))")

dev.new();

image(x, y, z, col = gray((1:10)/10))

contour(x,y,z,col="white",add=TRUE,method="flattest",labcex = 1)

# plot Copula density dalam (x,y)

cuv <- function(u,v)

# { or*(1+(or-1)*(u+v-2*u*v))/((1+(or-1)*(u+v))^2-4*or*(or-

1)*u*v)^1.5 }

{

dweibull(qweibull(u,a1,b1),a1,b1)*dlnorm(qlnorm(v,m1,s1),m1,s1)*dC

opula(cbind(u,v), claytonCopula(t)) }

Page 9: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

44

z1 <- outer(u,v,cuv)

dev.new();

persp(x,y,z1,theta = 30,phi = 30,expand = 0.5,col = "lightblue",

ltheta = 120,shade = 0.75,ticktype = "detailed",

xlab = "x",ylab = "y",zlab = "c(F(x),G(y))f(x)g(y)")

dev.new();

image(x, y, z1, col = gray((1:10)/10))

contour(x,y,z1,col="white",add=TRUE,method="flattest",labcex = 1)

#END##############################################################

#START############################################################

# Data

X <- read.table('data.txt')[,1]/360

Y <- read.table('data.txt')[,2]/10000

x <- X

y <- Y

graphics.off()

library('copula')

##################################################################

# Copula

# plot Copula

#Parameter Copula

t <- 0.5

#discretization

u <- seq(0,1,length= 100)

v <- u

#function(u,v) { ((1+(or-1)*(u+v))-

Cuv <- function(u,v)

# (sqrt((1+(or-1)*(u+v))^2-4*or*(or-1)*u*v)))/(2*(or-1)) }

{ pCopula(cbind(u,v), amhCopula(t)) }

z <- outer(u,v,Cuv)

dev.new()

persp(u,v,z,theta = 30,phi = 30,expand = 0.5,col = "lightblue",

ltheta = 120,shade = 0.75,ticktype = "detailed",

xlab = "u",ylab = "v",zlab = "C(u,v)")

dev.new();

image(u, v, z, col = gray((1:10)/10))

contour(u,v,z,col="white",add=TRUE,method="flattest",labcex = 1)

# plot Copula density

cuv <- function(u,v)

# { or*(1+(or-1)*(u+v-2*u*v))/((1+(or-1)*(u+v))^2-4*or*(or-

1)*u*v)^1.5 }

{ dCopula(cbind(u,v), amhCopula(t)) }

z1 <- outer(u,v,cuv)

dev.new();

persp(u,v,z1,theta = 30,phi = 30,expand = 0.5,col = "lightblue",

ltheta = 120,shade = 0.75,ticktype = "detailed",

xlab = "u",ylab = "v",zlab = "c(u,v)")

dev.new();

image(u, v, z1, col = gray((1:10)/20))

contour(u,v,z1,col="white",add=TRUE,method="flattest",labcex = 1)

dev.new()

x=rCopula(1000,amhCopula(t))

plot(x)

#END##############################################################

Page 10: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

45

#START############################################################

#Ekspektasi_Weibull_Clayton

# Data

X <- read.table('data.txt')[,1]/360

Y <- read.table('data.txt')[,2]/10000

x1 <- X

y1 <- Y

##################################################################

# Distribusi Marginal

a1 = 2.6446 ; b1 = 0.5663

m1 = -0.06361; s1 = 0.37611

g = 0.1930301

t <- function(x1,y1,pixelx1,pixely1)

{

n<-pixelx1*x1; m<-pixely1*y1; dt<-x1/n; ds<-y1/m;

M <-matrix(0,nrow=n,ncol=m)

H <- function(x1,y1)

{

u <- pweibull(x1,a1,b1); v <- plnorm(y1,m1,s1);

return( ( u^(-g) + v^(-g) - 1 )^(-1/g) )

}

inc <- function(i2,j2,i1,j1)

{ H(i2,j2) - H(i1,j2) - H(i2,j1) + H(i1,j1) }

for(j in 1:m) { M[2,j] <- H(dt,(j-1)*ds) }

for(i in 1:n) { M[i,2] <- H((i-1)*dt,ds) }

Hinc <- function(x1,y1,p,q)

{

Hxpyq <- matrix(0,nrow=p,ncol=q)

for(i in 1:p)

{

for(j in 1:q) { Hxpyq[i,j] <- inc(x1-(i-

1)*dt,y1-(j-1)*ds,x1-i*dt,y1-j*ds) }

}

return(Hxpyq)

}

for(i in 3:n)

{

for(j in 3:m) { M[i,j]<-sum((1 + M[1:(i-1),1:(j-

1)])*Hinc((i-1)*dt,(j-1)*ds,i-1,j-1)) }

}

Mt <- sum((1 + M)*Hinc(x1,y1,n,m));

return(Mt)

}

tab <- matrix(0,nrow=5,ncol=6)

tab[1,1] <- t(0.5,0.5,100,100)

tab[2,1] <- t(1.0,0.5,100,100)

Page 11: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

46

tab[3,1] <- t(1.5,0.5,100,100)

tab[4,1] <- t(2.0,0.5,100,100)

tab[5,1] <- t(2.5,0.5,100,100)

tab[1,2] <- t(0.5,1.0,100,100)

tab[2,2] <- t(1.0,1.0,100,100)

tab[3,2] <- t(1.5,1.0,100,100)

tab[4,2] <- t(2.0,1.0,100,100)

tab[5,2] <- t(2.5,1.0,100,100)

tab[1,3] <- t(0.5,1.5,100,100)

tab[2,3] <- t(1.0,1.5,100,100)

tab[3,3] <- t(1.5,1.5,100,100)

tab[4,3] <- t(2.0,1.5,100,100)

tab[5,3] <- t(2.5,1.5,100,100)

tab[1,4] <- t(0.5,2.0,100,100)

tab[2,4] <- t(1.0,2.0,100,100)

tab[3,4] <- t(1.5,2.0,100,100)

tab[4,4] <- t(2.0,2.0,100,100)

tab[5,4] <- t(2.5,2.0,100,100)

tab[1,5] <- t(0.5,2.5,100,100)

tab[2,5] <- t(1.0,2.5,100,100)

tab[3,5] <- t(1.5,2.5,100,100)

tab[4,5] <- t(2.0,2.5,100,100)

tab[5,5] <- t(2.5,2.5,100,100)

tab[1,6] <- t(0.5,3.0,100,100)

tab[2,6] <- t(1.0,3.0,100,100)

tab[3,6] <- t(1.5,3.0,100,100)

tab[4,6] <- t(2.0,3.0,100,100)

tab[5,6] <- t(2.5,3.0,100,100)

#END##############################################################

Page 12: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

47

Page 13: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

48

Page 14: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

49

Page 15: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

50

Page 16: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

51

Page 17: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

52

Page 18: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

53

Page 19: Lampiran 1. - repository.uksw.edu · Misalkan adalah peubah acak kontinu dengan fungsi distribusi ... 4. Eksponensial satu parameter, ... Contoh Uji Kecocokan Distribusi Misal diambil

54

`