Perbandingan Dua Vektor Nilai Tengah Sampel Berpasangan
Input Data
library(readxl)
## Warning: package 'readxl' was built under R version 4.3.3
dataset <- read_excel("Data Prak 4.xlsx")
dataset <- dataset[-1]
dataset
## # A tibble: 15 × 4
## Kata_Formal Kata_Kerja_Formal Kata_Informal Kata_Kerja_Informal
## <dbl> <dbl> <dbl> <dbl>
## 1 137 15 148 20
## 2 164 25 159 24
## 3 224 27 144 19
## 4 208 33 103 18
## 5 178 24 121 17
## 6 128 20 89 11
## 7 154 18 119 17
## 8 158 16 123 13
## 9 102 21 76 16
## 10 214 25 217 29
## 11 209 24 148 22
## 12 151 16 151 21
## 13 123 13 83 7
## 14 161 22 135 20
## 15 175 23 178 15
Menghitung Selisih Essay Formal dan Informal
d_kata = dataset[,1]-dataset[,3]
d_kata_kerja = dataset[,2]-dataset[,4]
X = data.frame("Selisih Kata" = d_kata$Kata_Formal,
"Selisih Kata Kerja" = d_kata_kerja$Kata_Kerja_Formal)
Menghitung vektor rataan dan matriks covarians
xbar = apply(X, 2, mean)
xbar
## Selisih.Kata Selisih.Kata.Kerja
## 32.800000 3.533333
cov_m = cov(X)
cov_m
## Selisih.Kata Selisih.Kata.Kerja
## Selisih.Kata 1096.029 139.90000
## Selisih.Kata.Kerja 139.900 31.55238
Uji T2 Hotelling Dua Populasi Sampel Berpasangan
\[H_{0}:\mu_{d}=\begin{bmatrix} 0\\ 0 \end{bmatrix}\]
\[H_{1}:\mu_{d}\neq \begin{bmatrix} 0\\ 0 \end{bmatrix}\]
library(MVTests)
## Warning: package 'MVTests' was built under R version 4.3.3
##
## Attaching package: 'MVTests'
## The following object is masked from 'package:datasets':
##
## iris
mean0 = c(0,0)
result = OneSampleHT2(X,mu0=mean0,alpha=0.05)
summary(result)
## One Sample Hotelling T Square Test
##
## Hotelling T Sqaure Statistic = 15.19123
## F value = 7.053 , df1 = 2 , df2 = 13 , p-value: 0.00843
##
## Descriptive Statistics
##
## Selisih.Kata Selisih.Kata.Kerja
## N 15.00000 15.000000
## Means 32.80000 3.533333
## Sd 33.10632 5.617151
##
##
## Detection important variable(s)
##
## Lower Upper Mu0 Important Variables?
## Selisih.Kata 8.3272804 57.27272 0 *TRUE*
## Selisih.Kata.Kerja -0.6189537 7.68562 0 FALSE
Kesimpulan : Tolak H0 pada taraf nyata 5% karena
p-value = 0.008 < alpha
Artinya : Dengan tingkat kepercayaan 95%, dapat
disimpulkan bahwa terdapat perbedaan kata dan kata kerja antara essay
formal dengan essay informal.
Jika dilihat dari rata-rata selisih kata antara essay formal dengan
essay informal dan rata-rata selisih kata kerja antara essay formal
dengan essay informal di mana rata-rata selisih kata antara essay formal
dengan essay informal lebih besar maka essay formal lebih baik daripada
essay informal.
Selang Kepercayaan Simultan
result$CI
## Lower Upper Mu0 Important Variables?
## Selisih.Kata 8.3272804 57.27272 0 *TRUE*
## Selisih.Kata.Kerja -0.6189537 7.68562 0 FALSE
Selang Kepercayaan Bonferroni
bon = function(mu,S,n,alpha,k){
p = length(mu)
lower = mu[k] - sqrt(S[k,k]/n) * abs(qt(alpha/(2*p), df=n-1))
upper = mu[k] + sqrt(S[k,k]/n) * abs(qt(alpha/(2*p), df=n-1))
c(lower = lower,upper = upper)
}
n = nrow(X)
#Kata
bon(xbar, cov_m,n,0.05,1)
## lower.Selisih.Kata upper.Selisih.Kata
## 11.34816 54.25184
#Kata Kerja
bon(xbar, cov_m,n,0.05,2)
## lower.Selisih.Kata.Kerja upper.Selisih.Kata.Kerja
## -0.1064007 7.1730674
Perbandingan Dua Vektor Nilai Tengah Sampel Saling Bebas Ragam Sama
Input Data
library(readxl)
dataset2 <- read_excel("Data Prak 4.xlsx",sheet="Soal 2")
dataset2 <- dataset2[-1]
dataset2
## # A tibble: 20 × 4
## TWK_CAT TIU_CAT TWK_MANUAL TIU_MANUAL
## <dbl> <dbl> <dbl> <dbl>
## 1 54 77 58 84
## 2 76 58 49 60
## 3 55 58 83 69
## 4 79 63 55 60
## 5 84 37 85 89
## 6 60 45 90 68
## 7 73 60 42 36
## 8 81 56 85 57
## 9 65 80 80 46
## 10 54 42 89 51
## 11 67 42 40 65
## 12 51 64 71 64
## 13 56 62 81 82
## 14 50 41 40 50
## 15 58 43 80 77
## 16 82 46 75 35
## 17 61 48 41 55
## 18 60 43 54 61
## 19 45 56 48 50
## 20 80 38 69 43
# Memisahkan Data dari Populasi 1 dan 2
data_cat = dataset2[,1:2]
data_cat
## # A tibble: 20 × 2
## TWK_CAT TIU_CAT
## <dbl> <dbl>
## 1 54 77
## 2 76 58
## 3 55 58
## 4 79 63
## 5 84 37
## 6 60 45
## 7 73 60
## 8 81 56
## 9 65 80
## 10 54 42
## 11 67 42
## 12 51 64
## 13 56 62
## 14 50 41
## 15 58 43
## 16 82 46
## 17 61 48
## 18 60 43
## 19 45 56
## 20 80 38
data_man = dataset2[,3:4]
data_man
## # A tibble: 20 × 2
## TWK_MANUAL TIU_MANUAL
## <dbl> <dbl>
## 1 58 84
## 2 49 60
## 3 83 69
## 4 55 60
## 5 85 89
## 6 90 68
## 7 42 36
## 8 85 57
## 9 80 46
## 10 89 51
## 11 40 65
## 12 71 64
## 13 81 82
## 14 40 50
## 15 80 77
## 16 75 35
## 17 41 55
## 18 54 61
## 19 48 50
## 20 69 43
Menghitung vektor rataan dan matriks covarians
xbar1 = apply(data_cat, 2, mean)
xbar1
## TWK_CAT TIU_CAT
## 64.55 52.95
xbar2 = apply(data_man, 2, mean)
xbar2
## TWK_MANUAL TIU_MANUAL
## 65.75 60.10
cov_m1 = cov(data_cat)
cov_m1
## TWK_CAT TIU_CAT
## TWK_CAT 151.10263 -26.28684
## TIU_CAT -26.28684 154.15526
cov_m2 = cov(data_man)
cov_m2
## TWK_MANUAL TIU_MANUAL
## TWK_MANUAL 333.77632 81.86842
## TIU_MANUAL 81.86842 230.41053
n1 = nrow(data_cat)
n2 = nrow(data_man)
# S Gabungan
s_gab = ((n1-1)*cov_m1+(n2-1)*cov_m2)/(n1+n2-2)
s_gab
## TWK_CAT TIU_CAT
## TWK_CAT 242.43947 27.79079
## TIU_CAT 27.79079 192.28289
Uji Hipotesis
\[H_{0}:\mu_{1}=\mu_{2}\]
\[H_{1}:\mu_{1}\neq \mu_{2}\]
library(Hotelling)
## Loading required package: corpcor
t2_homogen = hotelling.test(data_cat,data_man,var.equal=TRUE)
t2_homogen
## Test stat: 2.6599
## Numerator df: 2
## Denominator df: 37
## P-value: 0.286
Kesimpulan : Gagal tolak H0 pada taraf nyata 5%
karena p-value = 0.286 > alpha
Artinya : Pada Saat ragam Populasi Tes CPNS Manual
diasumsikan sama dengan Ragam Populasi Tes CPNS CAT, maka dapat
disimpulkan belum cukup bukti menolak Ho. Dengan kata lain, nilai Tes
CPNS manual tidak berbeda dengan tes CPNS Cat dengan uji taraf nyata
5%.
Selang Kepercayaan Simultan
T.ci = function(mu1, mu2, S_gab, n1, n2, avec=rep(1,length(mu)), level=0.95){
p = length(mu1)
mu = mu1-mu2
cval = qf(level, p, n1+n2-p-1) * p * (n1+n2-2) / (n1+n2-p-1)
zhat = crossprod(avec, mu)
zvar = crossprod(avec, S_gab %*% avec)* (1/n1+1/n2)
const = sqrt(cval * zvar)
c(lower = zhat - const, upper = zhat + const)
}
#TWK
T.ci(xbar1, xbar2, s_gab, n1,n2, avec=c(1,0),level=0.95)
## lower upper
## -13.92559 11.52559
#TIU
T.ci(xbar1, xbar2, s_gab, n1,n2, avec=c(0,1),level=0.95)
## lower upper
## -18.483041 4.183041
Selang Kepercayaan Bonferroni
bon = function(mu1, mu2 ,S, n1, n2, alpha, k){
p = length(mu1)
mu = mu1-mu2
lower = mu[k] - sqrt((S[k,k]) *(1/n1+1/n2))* abs(qt(alpha/(2*p), df=n1+n2-2))
upper = mu[k] + sqrt((S[k,k]) *(1/n1+1/n2))* abs(qt(alpha/(2*p), df=n1+n2-2))
ci = c(lower = lower,upper = upper)
names(ci)= c("lower","upper")
ci
}
#TWK
bon(xbar1, xbar2, s_gab, n1, n2,0.05,1)
## lower upper
## -12.69081 10.29081
#TIU
bon(xbar1, xbar2, s_gab, n1, n2,0.05,2)
## lower upper
## -17.383384 3.083384
Perbandingan Dua Vektor Nilai Tengah Sampel Saling Bebas Ragam Tidak Sama
Input Data
library(readxl)
dataset <- read_excel("Data Prak 4.xlsx",sheet="Soal 2")
dataset <- dataset[-1]
# Memisahkan Data dari Populasi 1 dan 2
data_cat = dataset[,1:2]
data_man = dataset[,3:4]
Menghitung vektor rataan dan matriks covarians
xbar1 = apply(data_cat, 2, mean)
xbar1
## TWK_CAT TIU_CAT
## 64.55 52.95
xbar2 = apply(data_man, 2, mean)
xbar2
## TWK_MANUAL TIU_MANUAL
## 65.75 60.10
cov_m1 = cov(data_cat)
cov_m1
## TWK_CAT TIU_CAT
## TWK_CAT 151.10263 -26.28684
## TIU_CAT -26.28684 154.15526
cov_m2 = cov(data_man)
cov_m2
## TWK_MANUAL TIU_MANUAL
## TWK_MANUAL 333.77632 81.86842
## TIU_MANUAL 81.86842 230.41053
n1 = nrow(data_cat)
n2 = nrow(data_man)
Uji Hipotesis
\[H_{0}:\mu_{1}=\mu_{2}\]
\[H_{1}:\mu_{1}\neq \mu_{2}\]
library(Hotelling)
t2_not_homogen = hotelling.test(data_cat,data_man,var.equal=FALSE)
t2_not_homogen
## Test stat: 2.6599
## Numerator df: 2
## Denominator df: 34.1358976944273
## P-value: 0.287
Kesimpulan : Gagal tolak H0 pada taraf nyata 5%
karena p-value = 0.287 > alpha
Artinya : Pada Saat ragam Populasi Tes CPNS Manual
diasumsikan tidak sama dengan Ragam Populasi Tes CPNS CAT, maka dapat
disimpulkan belum cukup bukti menolak Ho. Dengan kata lain, nilai Tes
CPNS manual tidak berbeda dengan tes CPNS Cat dengan uji taraf nyata
5%.
Selang Kepercayaan Simultan
T.ci = function(mu1, mu2, S1, S2, n1, n2, avec=rep(1,length(mu)), level=0.95){
p = length(mu1)
mu = mu1-mu2
cval = qchisq(level, p)
zhat = crossprod(avec, mu)
zvar = crossprod(avec, S1 %*% avec)/n1 + crossprod(avec, S2 %*% avec)/n2
const = sqrt(cval * zvar)
c(lower = zhat - const, upper = zhat + const)
}
#TWK
T.ci(xbar1, xbar2, cov_m1, cov_m2, n1,n2, avec=c(1,0),level=0.95)
## lower upper
## -13.25225 10.85225
#TIU
T.ci(xbar1, xbar2, cov_m1, cov_m2, n1,n2, avec=c(0,1),level=0.95)
## lower upper
## -17.883388 3.583388