itle: “Tugas Penduga Kekar Parameter Data Bangkitan”
uthor: “Afris Setiya Intan Amanda”
ate: “5/27/2022”
utput: html_document

Identifikasi Pencilan Peubah Tunggal dan Penduga Kekar bagi Parameter Pemusatan dan Penyebaran

Dataset

Dataset yang digunakan merupakan data sekunder hasil pembangkitan dengan sebaran normal yang nilai parameter rataan sebesar 2 dan simpangan baku sebesar 5.

Library

#package yang digunakan
library(readxl)
## Warning: package 'readxl' was built under R version 4.1.2
library(data.table)
## Warning: package 'data.table' was built under R version 4.1.2
library(psych)
## Warning: package 'psych' was built under R version 4.1.3
library(lmomco)
## Warning: package 'lmomco' was built under R version 4.1.3
## 
## Attaching package: 'lmomco'
## The following object is masked from 'package:psych':
## 
##     harmonic.mean
library(dplR)
## Warning: package 'dplR' was built under R version 4.1.3

Impor Data

#data100
dt29.1 <- read_excel("C:/Users/hp/Documents/MY DEPARTEMEN/#4/AED/DATA/29.xlsx", sheet = 1)
View(dt29.1)
#data100 pencilan kanan
dt29.2 <- read_excel("C:/Users/hp/Documents/MY DEPARTEMEN/#4/AED/DATA/29.xlsx", sheet = 2)
View(dt29.2)
#data100 pencilan kiri
dt29.3 <- read_excel("C:/Users/hp/Documents/MY DEPARTEMEN/#4/AED/DATA/29.xlsx", sheet = 3)
View(dt29.3)
#data100 pencilan kanan kiri
dt29.4 <- read_excel("C:/Users/hp/Documents/MY DEPARTEMEN/#4/AED/DATA/29.xlsx", sheet = 4)
View(dt29.4)
#data10
dt29.5 <- read_excel("C:/Users/hp/Documents/MY DEPARTEMEN/#4/AED/DATA/29.xlsx", sheet = 5)
View(dt29.5)
#data10 pencilan kanan
dt29.6 <- read_excel("C:/Users/hp/Documents/MY DEPARTEMEN/#4/AED/DATA/29.xlsx", sheet = 6)
View(dt29.6)
#data10 pencilan kiri
dt29.7 <- read_excel("C:/Users/hp/Documents/MY DEPARTEMEN/#4/AED/DATA/29.xlsx", sheet = 7)
View(dt29.7)
#data10 pencilan kanan-kiri
dt29.8 <- read_excel("C:/Users/hp/Documents/MY DEPARTEMEN/#4/AED/DATA/29.xlsx", sheet = 8)
View(dt29.8)

Pendeteksiaan Pencilan

Pendeteksian pencilan dengan menggunakan dua cara. Pertama, suatu amatan akan disebut pencilan juka berada di luar selang (x bar - 3s, x bar + 3s). Kedua, amatan yang bernilai lebih kecil daripada Batas Bawah atau lebih besar daripada Batas Atas diidentifikasi sebagai pencilan. • Batas Bawah = Q1 – 1.5 * IQR • Batas Atas = Q3 + 1.5 * IQR

###Pendeteksiaan Pencilan pada Peubah Tunggal dt100

#Cara 1
y1 <- dt29.1$dt100
m <- mean(y1) 
s <- sd(y1) 
pencilan <- (y1 > m+3*s) | (y1 < m-3*s) 

#menghitung banyaknya amatan pencilan
sum(pencilan)
## [1] 0
#mengidentifikasi nomor amatan yang menjadi pencilan
which(pencilan)
## integer(0)
#nilai pencilan 
y1[which(pencilan)]
## numeric(0)
#Cara 2
value.outliery1 <- boxplot.stats(y1)$out
which(y1 == value.outliery1)
## integer(0)
value.outliery1
## numeric(0)
#boxplot
boxplot(dt29.1$dt100, ylab = "y1")

Dengan pendeteksiaan pencilan pada data peubah tunggal dt100, dapat dilihat bahwa tidak ada pencilan.Selain itu, dapat dilihat juga pada boxplot bahwa data peubah tunggal dt100 cukup simetris.

Pendeteksiaan Pencilan pada Peubah dt100r

#Cara 1
y2 <- dt29.2$dt100r
m <- mean(y2) 
s <- sd(y2) 
pencilan <- (y2 > m+3*s) | (y2 < m-3*s) 

#menghitung banyaknya amatan pencilan
sum(pencilan)
## [1] 4
#mengidentifikasi nomor amatan yang menjadi pencilan
which(pencilan)
## [1] 102 103 104 105
#nilai pencilan 
y2[which(pencilan)]
## [1]  88 103 134 147
#Cara 2
value.outliery2 <- boxplot.stats(y2)$out
which(y2 == value.outliery2)
## [1] 101 102 103 104 105
value.outliery2
## [1]  79  88 103 134 147
#boxplot
boxplot(dt29.2$dt100r, ylab = "y2")

Pendeteksiaan Pencilan pada Peubah dt100l

#Cara 1
y3 <- dt29.3$dt100l
m <- mean(y3) 
s <- sd(y3) 
pencilan <- (y3 > m+3*s) | (y3 < m-3*s) 

#menghitung banyaknya amatan pencilan
sum(pencilan)
## [1] 4
#mengidentifikasi nomor amatan yang menjadi pencilan
which(pencilan)
## [1] 2 3 4 5
#nilai pencilan 
y3[which(pencilan)]
## [1]  -72  -95 -117 -138
#Cara 2
value.outliery3 <- boxplot.stats(y3)$out
which(y3 == value.outliery3)
## [1] 1 2 3 4 5
value.outliery3
## [1]  -53  -72  -95 -117 -138
#boxplot
boxplot(dt29.3$dt100l, ylab = "y3")

Pendeteksiaan Pencilan pada Peubah dt100rl

#Cara 1
y4 <- dt29.4$dt100rl
m <- mean(y4) 
s <- sd(y4) 
pencilan <- (y4 > m+3*s) | (y4 < m-3*s) 

#menghitung banyaknya amatan pencilan
sum(pencilan)
## [1] 5
#mengidentifikasi nomor amatan yang menjadi pencilan
which(pencilan)
## [1]   4   5 108 109 110
#nilai pencilan 
y4[which(pencilan)]
## [1] -117 -138  103  134  147
#Cara 2
value.outliery4 <- boxplot.stats(y4)$out
which(y4 == value.outliery4)
##  [1]   1   2   3   4   5 106 107 108 109 110
value.outliery4
##  [1]  -53  -72  -95 -117 -138   79   88  103  134  147
#boxplot
boxplot(dt29.4$dt100rl, ylab = "y4")

Pendeteksiaan Pencilan pada Peubah dt10

#Cara 1
x1 <- dt29.5$dt10
m <- mean(x1) 
s <- sd(x1) 
pencilan <- (x1 > m+3*s) | (x1 < m-3*s) 

#menghitung banyaknya amatan pencilan
sum(pencilan)
## [1] 0
#mengidentifikasi nomor amatan yang menjadi pencilan
which(pencilan)
## integer(0)
#nilai pencilan 
x1[which(pencilan)]
## numeric(0)
#Cara 2
value.outlierx1 <- boxplot.stats(x1)$out
which(x1 == value.outlierx1)
## integer(0)
value.outlierx1
## numeric(0)
#boxplot
boxplot(dt29.5$dt10, ylab = "x1")

Pendeteksiaan Pencilan pada Peubah dt10r

#Cara 1
x2 <- dt29.6$dt10r
m <- mean(x2) 
s <- sd(x2) 
pencilan <- (x2 > m+3*s) | (x2 < m-3*s) 

#menghitung banyaknya amatan pencilan
sum(pencilan)
## [1] 0
#mengidentifikasi nomor amatan yang menjadi pencilan
which(pencilan)
## integer(0)
#nilai pencilan 
x2[which(pencilan)]
## numeric(0)
#Cara 2
value.outlierx2 <- boxplot.stats(x2)$out
which(x2 == value.outlierx2)
## [1] 11 12
value.outlierx2
## [1] 54 67
#boxplot
boxplot(dt29.6$dt10r, ylab = "x2")

Pendeteksiaan Pencilan pada Peubah dt10l

#Cara 1
x3 <- dt29.7$dt10l
m <- mean(x3) 
s <- sd(x3) 
pencilan <- (x3 > m+3*s) | (x3 < m-3*s) 

#menghitung banyaknya amatan pencilan
sum(pencilan)
## [1] 0
#mengidentifikasi nomor amatan yang menjadi pencilan
which(pencilan)
## integer(0)
#nilai pencilan 
x3[which(pencilan)]
## numeric(0)
#Cara 2
value.outlierx3 <- boxplot.stats(x3)$out
which(x3 == value.outlierx3)
## [1] 1 2
value.outlierx3
## [1] -23 -44
#boxplot
boxplot(dt29.7$dt10l, ylab = "x3")

Pendeteksiaan Pencilan pada Peubah dt10rl

#Cara 1
x4 <- dt29.8$dt10rl
m <- mean(x4) 
s <- sd(x4) 
pencilan <- (x4 > m+3*s) | (x4 < m-3*s) 

#menghitung banyaknya amatan pencilan
sum(pencilan)
## [1] 0
#mengidentifikasi nomor amatan yang menjadi pencilan
which(pencilan)
## integer(0)
#nilai pencilan 
x4[which(pencilan)]
## numeric(0)
#Cara 2
value.outlierx4 <- boxplot.stats(x4)$out
which(x4 == value.outlierx4)
## Warning in x4 == value.outlierx4: longer object length is not a multiple of
## shorter object length
## [1] 1 2
value.outlierx4
## [1] -23 -44  54  67
#boxplot
boxplot(dt29.8$dt10rl, ylab = "x4")

Pendeteksiaan Pencilan Eksploratif: Boxplot

par(mfrow=c(2,4))
boxplot(dt29.1$dt100, ylab = "dt100")
boxplot(dt29.2$dt100r, ylab = "dt100r")
boxplot(dt29.3$dt100l, ylab = "dt100l")
boxplot(dt29.4$dt100rl, ylab = "dt100rl")
boxplot(dt29.5$dt10, ylab = "dt10")
boxplot(dt29.6$dt10r, ylab = "dt10r")
boxplot(dt29.7$dt10l, ylab = "dt10l")
boxplot(dt29.8$dt10rl, ylab = "dt10rl")

Penduga Kekar bagi Rataan

Penduga Kekar bagi Rataan menggunakan 3 metode yaitu: 1. Trimmed Mean 2. Winsorized Mean 3. Pembobot Tukey

Penduga Kekar bagi Rataan pada Peubah dt100

#Trimmed Mean
mean(dt29.1$dt100,na.rm=TRUE)
## [1] 1.317255
mean(dt29.1$dt100, trim=0.05)
## [1] 1.300728
mean(dt29.1$dt100, trim=0.1)
## [1] 1.320186
#Winsorized Mean
winsorMEAN <- function(x,probs=c(0.05,0.95))
  {
    xq<-quantile(x,probs=probs)
    x[x < xq[1]]<-xq[1]
    x[x > xq[2]]<-xq[2]
    return(mean(x))
}

#nilai proporsi
wm05 <- winsorMEAN(dt29.1$dt100)                      #nilai peluang 5% dan 95%
wm05
## [1] 1.272903
wm10 <- winsorMEAN(dt29.1$dt100, probs=c(0.10, 0.90)) #nilai peluang 10% dan 90%
wm10
## [1] 1.279984
#menggunakan package psych
winsor.mean(dt29.1$dt100, trim=0.1)
## [1] 1.279984
winsor.mean(dt29.1$dt100, trim=0.05)
## [1] 1.272903
#Tukey
tbrm(dt29.1$dt100)
## [1] 1.289418

Penduga Kekar bagi Rataan pada Peubah dt100r

#Trimmed Mean
mean(dt29.2$dt100r)
## [1] 6.502148
mean(dt29.2$dt100r, trim=0.05)
## [1] 1.783629
mean(dt29.2$dt100r, trim=0.1)
## [1] 1.697381
#Winsorized Mean
winsorMEAN <- function(x,probs=c(0.05,0.95))
  {
    xq<-quantile(x,probs=probs)
    x[x < xq[1]]<-xq[1]
    x[x > xq[2]]<-xq[2]
    return(mean(x))
}

#nilai proporsi
wm05 <- winsorMEAN(dt29.2$dt100r)                      #nilai peluang 5% dan 95%
wm05
## [1] 1.952331
wm10 <- winsorMEAN(dt29.2$dt100r, probs=c(0.10, 0.90)) #nilai peluang 10% dan 90%
wm10
## [1] 1.65733
#menggunakan package psych
winsor.mean(dt29.2$dt100r, trim=0.1)
## [1] 1.65733
winsor.mean(dt29.2$dt100r, trim=0.05)
## [1] 1.952331
#Tukey
tbrm(dt29.2$dt100r)
## [1] 1.326342

Penduga Kekar bagi Rataan pada Peubah dt100l

#Trimmed Mean
mean(dt29.3$dt100l)
## [1] -3.269281
mean(dt29.3$dt100l, trim=0.05)
## [1] 0.8352237
mean(dt29.3$dt100l, trim=0.1)
## [1] 0.9223875
#Winsorized Mean
winsorMEAN <- function(x,probs=c(0.05,0.95))
  {
    xq<-quantile(x,probs=probs)
    x[x < xq[1]]<-xq[1]
    x[x > xq[2]]<-xq[2]
    return(mean(x))
}

#nilai proporsi
wm05 <- winsorMEAN(dt29.3$dt100l)                      #nilai peluang 5% dan 95%
wm05
## [1] 0.7167054
wm10 <- winsorMEAN(dt29.3$dt100l, probs=c(0.10, 0.90)) #nilai peluang 10% dan 90%
wm10
## [1] 0.8782828
#menggunakan package psych
winsor.mean(dt29.3$dt100l, trim=0.1)
## [1] 0.8782828
winsor.mean(dt29.3$dt100l, trim=0.05)
## [1] 0.7167054
#Tukey
tbrm(dt29.3$dt100l)
## [1] 1.280994

Penduga Kekar bagi Rataan pada Peubah dt100rl

#Trimmed Mean
mean(dt29.4$dt100rl)
## [1] 1.888414
mean(dt29.4$dt100rl, trim=0.05)
## [1] 1.317255
mean(dt29.4$dt100rl, trim=0.1)
## [1] 1.307026
#Winsorized Mean
winsorMEAN <- function(x,probs=c(0.05,0.95))
  {
    xq<-quantile(x,probs=probs)
    x[x < xq[1]]<-xq[1]
    x[x > xq[2]]<-xq[2]
    return(mean(x))
}

#nilai proporsi
wm05 <- winsorMEAN(dt29.4$dt100rl)                      #nilai peluang 5% dan 95%
wm05
## [1] 1.385302
wm10 <- winsorMEAN(dt29.4$dt100rl, probs=c(0.10, 0.90)) #nilai peluang 10% dan 90%
wm10
## [1] 1.283339
#menggunakan package psych
winsor.mean(dt29.4$dt100rl, trim=0.1)
## [1] 1.283339
winsor.mean(dt29.4$dt100rl, trim=0.05)
## [1] 1.385302
#Tukey
tbrm(dt29.4$dt100rl)
## [1] 1.293911

Penduga Kekar bagi Rataan pada Peubah dt10

#Trimmed Mean
mean(dt29.5$dt10)
## [1] 2.661014
mean(dt29.5$dt10, trim=0.05)
## [1] 2.661014
mean(dt29.5$dt10, trim=0.1)
## [1] 2.351485
#Winsorized Mean
winsorMEAN <- function(x,probs=c(0.05,0.95))
  {
    xq<-quantile(x,probs=probs)
    x[x < xq[1]]<-xq[1]
    x[x > xq[2]]<-xq[2]
    return(mean(x))
}

#nilai proporsi
wm05 <- winsorMEAN(dt29.5$dt10)                      #nilai peluang 5% dan 95%
wm05
## [1] 2.47161
wm10 <- winsorMEAN(dt29.5$dt10, probs=c(0.10, 0.90)) #nilai peluang 10% dan 90%
wm10
## [1] 2.282206
#menggunakan package psych
winsor.mean(dt29.5$dt10, trim=0.1)
## [1] 2.282206
winsor.mean(dt29.5$dt10, trim=0.05)
## [1] 2.47161
#Tukey
tbrm(dt29.5$dt10)
## [1] 2.670408

Penduga Kekar bagi Rataan pada Peubah dt10r

#Trimmed Mean
mean(dt29.6$dt10r)
## [1] 12.30084
mean(dt29.6$dt10r, trim=0.05)
## [1] 12.30084
mean(dt29.6$dt10r, trim=0.1)
## [1] 8.278828
#Winsorized Mean
winsorMEAN <- function(x,probs=c(0.05,0.95))
  {
    xq<-quantile(x,probs=probs)
    x[x < xq[1]]<-xq[1]
    x[x > xq[2]]<-xq[2]
    return(mean(x))
}

#nilai proporsi
wm05 <- winsorMEAN(dt29.6$dt10r)                      #nilai peluang 5% dan 95%
wm05
## [1] 11.70849
wm10 <- winsorMEAN(dt29.6$dt10r, probs=c(0.10, 0.90)) #nilai peluang 10% dan 90%
wm10
## [1] 10.50627
#menggunakan package psych
winsor.mean(dt29.6$dt10r, trim=0.1)
## [1] 10.50627
winsor.mean(dt29.6$dt10r, trim=0.05)
## [1] 11.70849
#Tukey
tbrm(dt29.6$dt10r)
## [1] 2.690778

Penduga Kekar bagi Rataan pada Peubah dt10l

#Trimmed Mean
mean(dt29.7$dt10l)
## [1] -3.365822
mean(dt29.7$dt10l, trim=0.05)
## [1] -3.365822
mean(dt29.7$dt10l, trim=0.1)
## [1] -0.6366265
#Winsorized Mean
winsorMEAN <- function(x,probs=c(0.05,0.95))
  {
    xq<-quantile(x,probs=probs)
    x[x < xq[1]]<-xq[1]
    x[x > xq[2]]<-xq[2]
    return(mean(x))
}

#nilai proporsi
wm05 <- winsorMEAN(dt29.7$dt10l)                      #nilai peluang 5% dan 95%
wm05
## [1] -2.599708
wm10 <- winsorMEAN(dt29.7$dt10l, probs=c(0.10, 0.90)) #nilai peluang 10% dan 90%
wm10
## [1] -1.639401
#menggunakan package psych
winsor.mean(dt29.7$dt10l, trim=0.1)
## [1] -1.639401
winsor.mean(dt29.7$dt10l, trim=0.05)
## [1] -2.599708
#Tukey
tbrm(dt29.7$dt10l)
## [1] 2.19905

Penduga Kekar bagi Rataan pada Peubah dt10rl

#Trimmed Mean
mean(dt29.8$dt10rl)
## [1] 5.757867
mean(dt29.8$dt10rl, trim=0.05)
## [1] 5.757867
mean(dt29.8$dt10rl, trim=0.1)
## [1] 4.800845
#Winsorized Mean
winsorMEAN <- function(x,probs=c(0.05,0.95))
  {
    xq<-quantile(x,probs=probs)
    x[x < xq[1]]<-xq[1]
    x[x > xq[2]]<-xq[2]
    return(mean(x))
}

#nilai proporsi
wm05 <- winsorMEAN(dt29.8$dt10rl)                      #nilai peluang 5% dan 95%
wm05
## [1] 6.129296
wm10 <- winsorMEAN(dt29.8$dt10rl, probs=c(0.10, 0.90)) #nilai peluang 10% dan 90%
wm10
## [1] 5.334935
#menggunakan package psych
winsor.mean(dt29.8$dt10rl, trim=0.1)
## [1] 5.334935
winsor.mean(dt29.8$dt10rl, trim=0.05)
## [1] 6.129296
#Tukey
tbrm(dt29.8$dt10rl)
## [1] 1.624409

Penduga Kekar bagi Ragam

Pendugaan robust bagi ragam dapat ditentukan sebagai kuadrat dari pendugaan robust bagi simpangan baku. Pendugaan robust bagi ragam menggunakan 2 metode yaitu MAD (Median Absolute Deviation) dan Gini’s mean difference.

Penduga Kekar bagi Ragam pada peubah dt100

#MAD
# Menentukan nilai constant
m = 10^5; n = 1000; c = numeric(m)
for(i in 1:m) {
 u = rnorm(n); s = sd(u); d = mad(u, const=T)
 c[i] = s/d 
}
const <- mean(c)
const
## [1] 1.48477
value.mad <- mad(dt29.1$dt100, constant=const) 
stdev.y1 <- sd(dt29.1$dt100)
stdev.kekar.y1 <- mad(dt29.1$dt100)
c(value.mad, stdev.y1, stdev.kekar.y1)
## [1] 5.327018 4.706179 5.319231
ragam.y1 <- stdev.y1^2
ragam.kekar.y1 <- (mad(dt29.1$dt100))^2
c(value.mad, ragam.y1, ragam.kekar.y1)
## [1]  5.327018 22.148125 28.294221
#gini's mean difference
#menggunakan package lmomco
gini.mean.diff(dt29.1$dt100)$gini
## [1] 5.392645

Penduga Kekar bagi Ragam pada peubah dt100r

#MAD
# Menentukan nilai constant
m = 10^5; n = 1000; c = numeric(m)
for(i in 1:m) {
 u = rnorm(n); s = sd(u); d = mad(u, const=T)
 c[i] = s/d 
}
const <- mean(c)
const
## [1] 1.484613
value.mad <- mad(dt29.2$dt100r, constant=const) 
stdev.y2 <- sd(dt29.2$dt100r)
stdev.kekar.y2 <- mad(dt29.2$dt100r)
c(value.mad, stdev.y2, stdev.kekar.y2)
## [1]  5.619175 24.433190  5.611557
ragam.y2 <- stdev.y2^2
ragam.kekar.y2 <- (mad(dt29.2$dt100r))^2
c(value.mad, ragam.y2, ragam.kekar.y2)
## [1]   5.619175 596.980752  31.489570
#gini's mean difference
#menggunakan package lmomco
gini.mean.diff(dt29.2$dt100r)$gini
## [1] 14.92655

Penduga Kekar bagi Ragam pada peubah dt100l

#MAD
# Menentukan nilai constant
m = 10^5; n = 1000; c = numeric(m)
for(i in 1:m) {
 u = rnorm(n); s = sd(u); d = mad(u, const=T)
 c[i] = s/d 
}
const <- mean(c)
const
## [1] 1.484637
value.mad <- mad(dt29.3$dt100l, constant=const) 
stdev.y3 <- sd(dt29.3$dt100l)
stdev.kekar.y3 <- mad(dt29.3$dt100l)
c(value.mad, stdev.y3, stdev.kekar.y3)
## [1]  5.608652 22.143527  5.600955
ragam.y3 <- stdev.y3^2
ragam.kekar.y3 <- (mad(dt29.3$dt100l))^2
c(value.mad, ragam.y3, ragam.kekar.y3)
## [1]   5.608652 490.335768  31.370699
#gini's mean difference
#menggunakan package lmomco
gini.mean.diff(dt29.3$dt100l)$gini
## [1] 13.78795

Penduga Kekar bagi Ragam pada peubah dt100rl

#MAD
# Menentukan nilai constant
m = 10^5; n = 1000; c = numeric(m)
for(i in 1:m) {
 u = rnorm(n); s = sd(u); d = mad(u, const=T)
 c[i] = s/d 
}
const <- mean(c)
const
## [1] 1.48461
value.mad <- mad(dt29.4$dt100rl, constant=const) 
stdev.y4 <- sd(dt29.4$dt100rl)
stdev.kekar.y4 <- mad(dt29.4$dt100rl)
c(value.mad, stdev.y4, stdev.kekar.y4)
## [1]  5.843491 32.606060  5.835581
ragam.y4 <- stdev.y4^2
ragam.kekar.y4 <- (mad(dt29.4$dt100rl))^2
c(value.mad, ragam.y4, ragam.kekar.y4)
## [1]    5.843491 1063.155126   34.054003
#gini's mean difference
#menggunakan package lmomco
gini.mean.diff(dt29.4$dt100rl)$gini
## [1] 22.55506

Penduga Kekar bagi Ragam pada peubah dt10

#MAD
# Menentukan nilai constant
m = 10^5; n = 1000; c = numeric(m)
for(i in 1:m) {
 u = rnorm(n); s = sd(u); d = mad(u, const=T)
 c[i] = s/d 
}
const <- mean(c)
const
## [1] 1.484918
value.mad <- mad(dt29.5$dt10, constant=const)
stdev.x1 <- sd(dt29.5$dt10)
stdev.kekar.x1 <- mad(dt29.5$dt10)
c(value.mad, stdev.x1, stdev.kekar.x1)
## [1] 3.874571 3.902930 3.868523
ragam.x1 <- stdev.x1^2
ragam.kekar.x1 <- (mad(dt29.5$dt10))^2
c(value.mad, ragam.x1, ragam.kekar.x1)
## [1]  3.874571 15.232861 14.965467
#gini's mean difference
#menggunakan package lmomco
gini.mean.diff(dt29.5$dt10)$gini
## [1] 4.591692

Penduga Kekar bagi Ragam pada peubah dt10r

#MAD
# Menentukan nilai constant
m = 10^5; n = 1000; c = numeric(m)
for(i in 1:m) {
 u = rnorm(n); s = sd(u); d = mad(u, const=T)
 c[i] = s/d 
}
const <- mean(c)
const
## [1] 1.484584
value.mad <- mad(dt29.6$dt10r, constant=const) 
stdev.x2 <- sd(dt29.6$dt10r)
stdev.kekar.x2 <- mad(dt29.6$dt10r)
c(value.mad, stdev.x2, stdev.kekar.x2)
## [1]  6.490523 22.956830  6.481849
ragam.x2 <- stdev.x2^2
ragam.kekar.x2 <- (mad(dt29.6$dt10r))^2
c(value.mad, ragam.x2, ragam.kekar.x2)
## [1]   6.490523 527.016024  42.014372
#gini's mean difference
#menggunakan package lmomco
gini.mean.diff(dt29.6$dt10r)$gini
## [1] 20.85463

Penduga Kekar bagi Ragam pada peubah dt10l

#MAD
# Menentukan nilai constant
m = 10^5; n = 1000; c = numeric(m)
for(i in 1:m) {
 u = rnorm(n); s = sd(u); d = mad(u, const=T)
 c[i] = s/d 
}
const <- mean(c)
const
## [1] 1.484783
value.mad <- mad(dt29.7$dt10l, constant=const) 
stdev.x3 <- sd(dt29.7$dt10l)
stdev.kekar.x3 <- mad(dt29.7$dt10l)
c(value.mad, stdev.x3, stdev.kekar.x3)
## [1]  5.182821 15.186599  5.175200
ragam.x3 <- stdev.x3^2
ragam.kekar.x3 <- (mad(dt29.7$dt10l))^2
c(value.mad, ragam.x3, ragam.kekar.x3)
## [1]   5.182821 230.632784  26.782691
#gini's mean difference
#menggunakan package lmomco
gini.mean.diff(dt29.7$dt10l)$gini
## [1] 14.40676

Penduga Kekar bagi Ragam pada peubah dt10rl

#MAD
# Menentukan nilai constant
m = 10^5; n = 1000; c = numeric(m)
for(i in 1:m) {
 u = rnorm(n); s = sd(u); d = mad(u, const=T)
 c[i] = s/d 
}
const <- mean(c)
const
## [1] 1.4847
value.mad <- mad(dt29.8$dt10rl, constant=const) 
stdev.x4 <- sd(dt29.8$dt10rl)
stdev.kekar.x4 <- mad(dt29.8$dt10rl)
c(value.mad, stdev.x4, stdev.kekar.x4)
## [1]  7.275302 27.194122  7.265012
ragam.x4 <- stdev.x4^2
ragam.kekar.x4 <- (mad(dt29.8$dt10rl))^2
c(value.mad, ragam.x4, ragam.kekar.x4)
## [1]   7.275302 739.520249  52.780394
#gini's mean difference
#menggunakan package lmomco
gini.mean.diff(dt29.8$dt10rl)$gini
## [1] 27.43545