Hampir semua analisis statistika parametrik memiliki asumsi normalitas. Jadi sebelum dilakukan analisis statistik, seperti analisis korelasi, regresi, t-test, atau anova, terlebih dahulu harus diuji apakah data kita normal atau tidak. Uji Normalitas dilakukan untuk memastikan data yang telah dikumpulkan berdistribusi normal atau diambil dari populasi normal. Pada dasarnya distribusi normal merupakan suatu distribusi yang menunjukkan sebaran data yang seimbang yang sebagian besar data adalah mendekati nilai mean. Jika digambarkan dengan histogram, data tersebut akan menyerupai bentuk lonceng. Ada beberapa cara untuk menguji normalitas data, baik itu dengan visual maupun dengan analisis statistik seperti shapiro-wilk dan kolmogorov-smirnov. berikut beberapa metode yang digunakan untuk menggunakan uji normalitas.
library(nortest) #Untuk melakukan Uji Normalitas dengan metode Anderson-Darling, Lilliefors, dan Shapiro-Francia.
library(tseries) #Untuk melakukan Uji Normalitas dengan metode Jarque-Bera.
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
library(stats) #Untuk uji Kormogolov-Smirnov dan uji Shapiro-Wilk.
data(Orange)
x <- Orange[,3]
x
## [1] 30 58 87 115 120 142 145 33 69 111 156 172 203 203 30 51 75 108 115
## [20] 139 140 32 62 112 167 179 209 214 30 49 81 125 142 174 177
ad.test(x)
##
## Anderson-Darling normality test
##
## data: x
## A = 0.47302, p-value = 0.2284
ks.test(x, pnorm, mean = mean(x), sd = sd(x))
## Warning in ks.test(x, pnorm, mean = mean(x), sd = sd(x)): ties should not be
## present for the Kolmogorov-Smirnov test
##
## One-sample Kolmogorov-Smirnov test
##
## data: x
## D = 0.084938, p-value = 0.9623
## alternative hypothesis: two-sided
lillie.test(x)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: x
## D = 0.084938, p-value = 0.7538
sf.test(x)
##
## Shapiro-Francia normality test
##
## data: x
## W = 0.96121, p-value = 0.2139
shapiro.test(x)
##
## Shapiro-Wilk normality test
##
## data: x
## W = 0.94591, p-value = 0.08483
jarque.bera.test(x)
##
## Jarque Bera Test
##
## data: x
## X-squared = 1.8767, df = 2, p-value = 0.3913
x_baru<-x^2
x_baru
## [1] 900 3364 7569 13225 14400 20164 21025 1089 4761 12321 24336 29584
## [13] 41209 41209 900 2601 5625 11664 13225 19321 19600 1024 3844 12544
## [25] 27889 32041 43681 45796 900 2401 6561 15625 20164 30276 31329
ad.test(x_baru)
##
## Anderson-Darling normality test
##
## data: x_baru
## A = 0.9104, p-value = 0.01816
x_baru<-x^3
x_baru
## [1] 27000 195112 658503 1520875 1728000 2863288 3048625 35937 328509
## [10] 1367631 3796416 5088448 8365427 8365427 27000 132651 421875 1259712
## [19] 1520875 2685619 2744000 32768 238328 1404928 4657463 5735339 9129329
## [28] 9800344 27000 117649 531441 1953125 2863288 5268024 5545233
ad.test(x_baru)
##
## Anderson-Darling normality test
##
## data: x_baru
## A = 1.9281, p-value = 5.029e-05
x_baru<-sqrt(x)
x_baru
## [1] 5.477226 7.615773 9.327379 10.723805 10.954451 11.916375 12.041595
## [8] 5.744563 8.306624 10.535654 12.489996 13.114877 14.247807 14.247807
## [15] 5.477226 7.141428 8.660254 10.392305 10.723805 11.789826 11.832160
## [22] 5.656854 7.874008 10.583005 12.922848 13.379088 14.456832 14.628739
## [29] 5.477226 7.000000 9.000000 11.180340 11.916375 13.190906 13.304135
ad.test(x_baru)
##
## Anderson-Darling normality test
##
## data: x_baru
## A = 0.68513, p-value = 0.06724
x_baru<-1/x
x_baru
## [1] 0.033333333 0.017241379 0.011494253 0.008695652 0.008333333 0.007042254
## [7] 0.006896552 0.030303030 0.014492754 0.009009009 0.006410256 0.005813953
## [13] 0.004926108 0.004926108 0.033333333 0.019607843 0.013333333 0.009259259
## [19] 0.008695652 0.007194245 0.007142857 0.031250000 0.016129032 0.008928571
## [25] 0.005988024 0.005586592 0.004784689 0.004672897 0.033333333 0.020408163
## [31] 0.012345679 0.008000000 0.007042254 0.005747126 0.005649718
ad.test(x_baru)
##
## Anderson-Darling normality test
##
## data: x_baru
## A = 3.3133, p-value = 1.773e-08
x_baru<-log(x)
x_baru
## [1] 3.401197 4.060443 4.465908 4.744932 4.787492 4.955827 4.976734 3.496508
## [9] 4.234107 4.709530 5.049856 5.147494 5.313206 5.313206 3.401197 3.931826
## [17] 4.317488 4.682131 4.744932 4.934474 4.941642 3.465736 4.127134 4.718499
## [25] 5.117994 5.187386 5.342334 5.365976 3.401197 3.891820 4.394449 4.828314
## [33] 4.955827 5.159055 5.176150
ad.test(x_baru)
##
## Anderson-Darling normality test
##
## data: x_baru
## A = 1.2631, p-value = 0.002348
box.cox <- function(x, lambda=0) {
if(lambda==0) return(log(x)) # secara default fungsi log pada R menggunakan basis `e`
else {
return((x^lambda-1)/lambda)
}
}
x_baru<-box.cox(x, 0.5)
x_baru
## [1] 8.954451 13.231546 16.654758 19.447611 19.908902 21.832751 22.083189
## [8] 9.489125 14.613248 19.071308 22.979992 24.229754 26.495614 26.495614
## [15] 8.954451 12.282857 15.320508 18.784610 19.447611 21.579652 21.664319
## [22] 9.313708 13.748016 19.166010 23.845696 24.758176 26.913665 27.257478
## [29] 8.954451 12.000000 16.000000 20.360680 21.832751 24.381812 24.608269
ad.test(x_baru)
##
## Anderson-Darling normality test
##
## data: x_baru
## A = 0.68513, p-value = 0.06724
Ampun…. dah pusing banget coy :)
みんな がんばって ください!!!
おちついて。。。ここ に RENALDI せんぱい が います。