PENDAHULUAN

Latar Belakang

Penguin merupakan salah satu hewan yang termasuk pada kelas unggas. Seperti pada umumnya, setiap makhluk hidup pasti memiliki anatominya masing-masing sesuai dengan kebutuhannya untuk bertahan hidup di alam. Meskipun termasuk pada kelas unggas, namun penguin termasuk salah satu hewan yang hidup di air. Sayap yang berfungsi layaknya seperti sirip ini digunakan penguin untuk mendayung berenang di air. Sedangkan ketika berjalan di daratan, maka sayap tersebut berfungsi sebagai alat penyeimbang.

Penguin memiliki banyak sekali keunikan dengan spesies dan habitatnya yang sebagian besar berada di daerah-daerah dingin seperti Antartika, hal tersebut menjadi daya tarik tersendiri oleh para peneliti untuk melakukan penelitian yang melibatkan unggas air tersebut. Salah satu fakta unik mengenai penguin yaitu penguin tidak memiliki kelamin eksternal. Sehingga untuk mengidentifikasinya, para peneliti harus melakukan teknik pemeriksaan lebih lanjut dengan mengamati kromosomnya/DNAnya. Seiring dengan berjalannya waktu dengan berbagai penelitian-penelitian yang sudah dilakukan, pengelompokkan jenis kelamin pada penguin dapat diduga dengan mengamati beberapa karakteristik yang dimiliki oleh masing-masing individu penguin. Salah satu caranya yaitu dengan mengamati perbedaan ukuran tubuh pada penguin. Penguin jantan dan betina diduga memiliki perbedaan ukuran tubuh yang cukup signifikan, hal tersebut terjadi karena pengaruh dari perbedaan pola makan antara penguin jantan dan betina. Untuk membuktikannya, maka pada analisis kali ini akan dibuktikan apakah terdapat perbedaan rata-rata ukuran tubuh dari penguin jantan dan betina dengan data sampel dari Palmer Penguin.

Tinjauan Pustaka

Analisis Multivariat

Analisis multivariat merupakan analisis statistik yang berfungsi untuk memahami struktur data yang memiliki dimensi tinggi. Data berdimensi tinggi yaitu data yang memiliki lebih dari dua variabel/ multivariabel dan saling terkait antara satu dengan yang lainnya. Menurut Santoso (2004), analisis multivariat dapat didefinisikan sebagai metode pengolahan variabel dalam jumlah yang banyak untuk mencari pengaruhnya terhadap suatu objek pengamatan secara simultan atau bersama-sama. Salah satu manfaat dari analisis multivariat yaitu dapat digunakan untuk mengetahui apakah rata-rata dari satu atau dua populasi berbeda secara signifikan.

Uji \(T^2\) Hotelling

Seperti yang sudah dibahas pada topik sebelumnya, \(T^2\) Hotelling merupakan salah satu alat analisis multivariat untuk menguji kesamaan rata-rata variabel yang berjumlah lebih dari satu atau dapat pula dikatakan sebagai alat untuk mengetahui apakah rata-rata multivariat dari satu atau dua populasi berbeda secara signifikan. \(T^2\) Hotelling multivariat dapat digunakan untuk mendeteksi proses pergeseran dari rata-rata secara multivariat setiap individu pengamatan dengan tetap dapat mengontrol proses pergeseran vaiabilitasnya.

Uji \(T^2\) Hotelling Dua Populasi

Pada pembahasan analisis yang akan dilakukan, penggunaan Uji \(T^2\) Hotelling untuk dua populasi merupakan pilihan yang tepat. Pada kasus ini terdapat dua populasi yang akan diuji apakah rata-rata multivariat dari masing-masing populasi yang saling bebas berbeda secara signifikan atau justru memiliki kesamaan.

Misalkan terdapat data yang memiliki strukur sampel \(x_{11},x_{12},x_{13},...,x_{1n_{1}}\) sebagai sampel acak dari populasi pertama sejumlah \(n_{1}\) pengamatan dengan vektor rata-rata \(\mu_{1}\) dan matriks varian-covarian \(\Sigma_{1}\) . Sedangkan \(x_{21},x_{22},x_{23},…,x_{2n_{2}}\) sebagai sampel acak dari populasi kedua sejumlah \(n_{2}\) dengan vektor rata-rata \(\mu_{2}\) dan matriks varian-covarian \(\Sigma_{2}\). Maka, dapat dilakukan uji hipotesis untuk menganalisis apakah terdapat perbedaan rata-rata multivariat dari kedua populasi yang saling bebas dengan rumus:

dengan:

dan statistik \(T^2\) akan menyebar

Hipotesis yang akan diuji yaitu:

\(H_{0} : \mu_{1} = \mu_{2}\) vs \(H_{1}: \mu_{1} ≠\mu_{2}\)

\(H_{0}\) diterima jika statistik uji \(T^2\) < \[\frac{(n-1)p}{(n-p)}\] \(F\alpha,(p,n-p)\)

Asumsi-asumsi Uji \(T^2\) Hotelling

  • Uji Asumsi Normalitas

    Selain populasi yang saling bebas, masing-masing sampel harus menyebar secara normal multivariat. Dalam hal ini, terdapat beberapa uji yang biasanya digunakan untuk memeriksa asumsi normalitas multivariat data sampel, diantaranya yaitu Uji Mardia, Uji Henze-Zirkler, Uji Shapiro Wilk.

    Hipotesis yang diuji yaitu:

    \(H_{0}\) = Data berdistribusi normal multivariat.

    vs

    \(H_{1}\) = Data tidak berdistribusi normal multivariat.

    \(H_{0}\) akan diterima, jika \(p-value > \alpha\)

  • Uji Asumsi Homogenitas

    Uji dilakukan dengan tujuan untuk mengetahui apakah matriks varian-covarian kedua populasi bersifat homogen atau tidak. Pemeriksaan asumsi ini dilakukan menggunakan uji Box-M, dengan hipotetis yang diuji sebagai berikut:

    \(H_{0} : \Sigma_{1} = \Sigma_{2} =…= \Sigma_{k} = \Sigma\) vs \(H_{1}\) : minimal terdapat satu $ ≠* ≠ $

    Hasil dari uji ini akan menerima \(H_{0}\) jika \(p-value>\alpha\)

Data

Pada analisis ini akan digunakan data yang terdiri dari dua populasi dengan masing-masing populasi memiliki 4 variabel yang akan diuji apakah terdapat perbedaan rata-rata multivariat yang signifikan antar kedua populasi. Dua populasi tersebut yaitu penguin jantan dan penguin betina. Sedangkan untuk variabelnya yaitu panjang paruh (bill length), lebar paruh (bill depth), panjang sirip (slipper length), , dan berat badan (body mass). Masing-masing populasi dari data ini berjumlah 1704, sehingga total dari keseluruhan data yaitu 3048. Berikut merupakan tautan dari data yang digunakan pada analisis ini:

Sumber Data Palmer Penguin

SOURCE CODE

Library

Apabila belum mengunduh library, maka dapat unduh terlebih dahulu menggunakan syntax di bawah ini:

> # install.packages("nama_library")
> # install.packages("readxl")
> # install.packages("MVN")
> # install.packages("mvnormtest")
> # install.packages("MVTests")
> # install.packages("Hotelling")
> # install.packages("DescTools")

Import Data

> library(readxl)
> penguins_dataset = read_excel("C:/Users/ACE GROUP/Downloads/palmerpenguins_extended.xlsx")
> View(penguins_dataset)
> 
> ## SPLIT ##
> split <- split(penguins_dataset[,-5], penguins_dataset$`sex`)
> female <-split[['1']]
> female
# A tibble: 1,704 × 4
   bill_length_mm bill_depth_mm flipper_length_mm body_mass_g
            <dbl>         <dbl>             <dbl>       <dbl>
 1           53.4          17.8               219        5687
 2           49.3          18.1               245        6811
 3           55.7          16.6               226        5388
 4           38            15.6               221        6262
 5           60.7          17.9               177        4811
 6           35.7          16.8               194        5266
 7           61            20.8               211        5961
 8           20.4          16.9               166        3431
 9           20.4          14.9               188        3672
10           20.8          18                 206        3378
# ℹ 1,694 more rows
> male <-split[['2']]
> male
# A tibble: 1,704 × 4
   bill_length_mm bill_depth_mm flipper_length_mm body_mass_g
            <dbl>         <dbl>             <dbl>       <dbl>
 1           66.1          20.8               246        6653
 2           61.4          19.9               270        6722
 3           54.9          22.3               230        6494
 4           63.9          16.5               277        6147
 5           55.1          19.7               224        6038
 6           57.4          19.5               255        5920
 7           31.6          16                 214        5004
 8           31.7          24.6               216        4821
 9           32.9          20.2               231        5431
10           21.1          23.3               219        4649
# ℹ 1,694 more rows

Cara lain untuk mengimpor dataset yaitu dengan klik ‘file’ pada pojok kiri atas - pilih ‘Import Dataset’ - pilih sesuai lokasi file yang akan diimpor - klik ‘brows’ pada kotak di pojok kanan atas - pilih file.

Note: Split data digunakakn untuk mempermudah analisis berikutnya. Split data membagi data menjadi 2 data frame populasi. Kode 1 untuk penguin betina dan 2 untuk penguin jantan.

Statistika Deskriptif

> ## MALE ##
> M_mean = colMeans(male)
> M_mean
   bill_length_mm     bill_depth_mm flipper_length_mm       body_mass_g 
         40.22342          18.91719         216.62852        5278.56866 
> M_var = var(male)
> M_var
                  bill_length_mm bill_depth_mm flipper_length_mm body_mass_g
bill_length_mm         189.81323     12.303367         264.69649    12420.77
bill_depth_mm           12.30337      8.035541          39.10956     2131.62
flipper_length_mm      264.69649     39.109562         811.41389    29750.83
body_mass_g          12420.76806   2131.620281       29750.82969  1851716.72
> M_cor = cor(male)
> M_cor
                  bill_length_mm bill_depth_mm flipper_length_mm body_mass_g
bill_length_mm         1.0000000     0.3150309         0.6744717   0.6625184
bill_depth_mm          0.3150309     1.0000000         0.4843443   0.5526053
flipper_length_mm      0.6744717     0.4843443         1.0000000   0.7675216
body_mass_g            0.6625184     0.5526053         0.7675216   1.0000000
> 
> ## FEMALE ##
> F_mean = colMeans(female)
> F_mean
   bill_length_mm     bill_depth_mm flipper_length_mm       body_mass_g 
         36.89507          18.00874         197.67430        4405.14613 
> F_var = var(female)
> F_var
                  bill_length_mm bill_depth_mm flipper_length_mm body_mass_g
bill_length_mm        152.553763      8.937559         214.67931    8959.021
bill_depth_mm           8.937559      6.917780          30.32158    1511.081
flipper_length_mm     214.679310     30.321581         686.58851   22028.007
body_mass_g          8959.020803   1511.080577       22028.00711 1197227.498
> F_cor = cor(female)
> F_cor
                  bill_length_mm bill_depth_mm flipper_length_mm body_mass_g
bill_length_mm         1.0000000     0.2751212         0.6633313   0.6629194
bill_depth_mm          0.2751212     1.0000000         0.4399671   0.5250684
flipper_length_mm      0.6633313     0.4399671         1.0000000   0.7683137
body_mass_g            0.6629194     0.5250684         0.7683137   1.0000000

Uji Asumsi

Asumsi Normalitas

Uji asumsi normalitas sebelum data ditransformasi:

> ## UJI MARDIA ##
> library(MVN)
> norm.test = mvn(penguins_dataset, subset = "sex", mvnTest = "mardia")
> norm.test$multivariateNormality
$`1`
             Test        Statistic             p value Result
1 Mardia Skewness 391.226354758767 1.3472283894096e-70     NO
2 Mardia Kurtosis 2.46189487373655  0.0138205169238623     NO
3             MVN             <NA>                <NA>     NO

$`2`
             Test        Statistic               p value Result
1 Mardia Skewness 540.534590097594 9.23496345384242e-102     NO
2 Mardia Kurtosis 3.77285285000509  0.000161391483125328     NO
3             MVN             <NA>                  <NA>     NO
> 
> ## UJI  HENZE-ZIRKLER ##
> norm_hz = mvn(data = penguins_dataset, mvnTest="hz", subset="sex")
> norm_hz$multivariateNormality
$`1`
           Test       HZ p value MVN
1 Henze-Zirkler 6.964207       0  NO

$`2`
           Test       HZ p value MVN
1 Henze-Zirkler 8.378126       0  NO
> 
> ## UJI SHAPIRO WILK ##
> library(mvnormtest)
> mshapiro.test(t(male))

    Shapiro-Wilk normality test

data:  Z
W = 0.97228, p-value < 2.2e-16
> mshapiro.test(t(female))

    Shapiro-Wilk normality test

data:  Z
W = 0.9904, p-value = 3.664e-09

Uji asumsi normalitas dengan data yang ditransformasi. Transformasi dilakukan menggunakan transformasi logaritma. Meskipun belum membuat data menjadi normal, tetapi dapat membuat asumsi homogenitas terpenuhi. Data hasil transformasi diberi nama ‘databaru’.

> ## TRANSFORMASI DATA ##
> trans = log(penguins_dataset[,1:4])
> x1 = trans$bill_length_mm
> x2 = trans$bill_depth_mm
> x3 = trans$flipper_length_mm
> x4 = trans$body_mass_g
> Gender = penguins_dataset$sex
> databaru= data.frame(x1, x2, x3, x4, Gender)
> 
> split <- split(databaru[,-5], databaru$`Gender`)
> Ml <-split[['2']]
> Fm <-split[['1']]
> 
> ## UJI MARDIA ##
> norm.test = mvn(databaru, subset = "Gender", mvnTest = "mardia")
> norm.test$multivariateNormality
$`1`
             Test         Statistic             p value Result
1 Mardia Skewness  231.319544309209 6.5061210388353e-38     NO
2 Mardia Kurtosis -3.01076720051662  0.0026058855861093     NO
3             MVN              <NA>                <NA>     NO

$`2`
             Test         Statistic              p value Result
1 Mardia Skewness  301.736361324523 3.57206067554128e-52     NO
2 Mardia Kurtosis -2.91659651489991  0.00353873220429834     NO
3             MVN              <NA>                 <NA>     NO
> 
> ## UJI HENZE-ZIRKLER ##
> norm_hz = mvn(data = databaru, mvnTest="hz", subset="Gender")
> norm_hz$multivariateNormality
$`1`
           Test       HZ p value MVN
1 Henze-Zirkler 4.344818       0  NO

$`2`
           Test       HZ p value MVN
1 Henze-Zirkler 4.894116       0  NO
> 
> ## UJI SHAPIRO WILK ##
> mshapiro.test(t(Ml))

    Shapiro-Wilk normality test

data:  Z
W = 0.98389, p-value = 6.658e-13
> mshapiro.test(t(Fm))

    Shapiro-Wilk normality test

data:  Z
W = 0.99352, p-value = 8.34e-07

Asumsi Homogenitas

Uji asumsi homogenitas menggunakan Uji Box-M dengan data sebelum ditransformasi (penguins_dataset):

> library(MVTests)
> hom<-BoxM(data = penguins_dataset[,1:4], penguins_dataset$`sex`)
> summary(hom)
       Box's M Test 

Chi-Squared Value = 143.2361 , df = 10  and p-value: <2e-16 

Uji asumsi homogenitas menggunakan Uji Box-M dengan data yang sudah ditransformasi (databaru):

> hom<-BoxM(data = databaru[,1:4], databaru$`Gender`)
> summary(hom)
       Box's M Test 

Chi-Squared Value = 6.291478 , df = 10  and p-value: 0.79 

QQ Plot

QQ Plot dari data awal (penguins_dataset):

> hz_male= mvn(male,mvnTest = "hz", multivariatePlot = "qq")

> hz_male
$multivariateNormality
           Test       HZ p value MVN
1 Henze-Zirkler 8.378126       0  NO

$univariateNormality
              Test          Variable Statistic   p value Normality
1 Anderson-Darling  bill_length_mm     53.4210  <0.001      NO    
2 Anderson-Darling   bill_depth_mm      0.5978  0.1183      YES   
3 Anderson-Darling flipper_length_mm   19.3072  <0.001      NO    
4 Anderson-Darling    body_mass_g      20.1195  <0.001      NO    

$Descriptives
                     n       Mean     Std.Dev Median    Min     Max    25th
bill_length_mm    1704   40.22342   13.777272   36.0   16.3    88.2   30.10
bill_depth_mm     1704   18.91719    2.834703   18.9    9.1    27.9   17.00
flipper_length_mm 1704  216.62852   28.485328  211.0  157.0   308.0  195.00
body_mass_g       1704 5278.56866 1360.777985 5022.5 2898.0 10549.0 4264.75
                      75th       Skew   Kurtosis
bill_length_mm      48.525 0.95386001  0.1792982
bill_depth_mm       20.700 0.02908365  0.1459955
flipper_length_mm  236.000 0.61240533 -0.2300408
body_mass_g       6128.750 0.80183916  0.3402759
> hz_female = mvn(female,mvnTest = "hz", multivariatePlot = "qq")

> hz_female
$multivariateNormality
           Test       HZ p value MVN
1 Henze-Zirkler 6.964207       0  NO

$univariateNormality
              Test          Variable Statistic   p value Normality
1 Anderson-Darling  bill_length_mm     46.4933  <0.001      NO    
2 Anderson-Darling   bill_depth_mm      0.3501  0.4722      YES   
3 Anderson-Darling flipper_length_mm   16.8418  <0.001      NO    
4 Anderson-Darling    body_mass_g      15.0820  <0.001      NO    

$Descriptives
                     n       Mean     Std.Dev Median    Min    Max     25th
bill_length_mm    1704   36.89507   12.351266   33.2   13.6   85.0   27.875
bill_depth_mm     1704   18.00874    2.630167   18.0    9.7   26.1   16.200
flipper_length_mm 1704  197.67430   26.202834  193.0  140.0  284.0  177.000
body_mass_g       1704 4405.14613 1094.178915 4260.0 2477.0 8055.0 3556.500
                      75th       Skew   Kurtosis
bill_length_mm      45.125 0.82658603 -0.1457630
bill_depth_mm       19.800 0.03299316 -0.1627463
flipper_length_mm  216.000 0.55623167 -0.3078153
body_mass_g       5104.500 0.61854161 -0.1508930

QQ Plot dari data sesudah transformasi (databaru):

> hz_Ml = mvn(Ml,mvnTest = "hz", multivariatePlot = "qq")

> hz_Ml
$multivariateNormality
           Test       HZ p value MVN
1 Henze-Zirkler 4.894116       0  NO

$univariateNormality
              Test  Variable Statistic   p value Normality
1 Anderson-Darling    x1       18.5846  <0.001      NO    
2 Anderson-Darling    x2        3.8133  <0.001      NO    
3 Anderson-Darling    x3       10.2655  <0.001      NO    
4 Anderson-Darling    x4        4.6127  <0.001      NO    

$Descriptives
      n     Mean   Std.Dev   Median      Min      Max     25th     75th
x1 1704 3.640815 0.3222790 3.583519 2.791165 4.479607 3.404525 3.882079
x2 1704 2.928451 0.1544152 2.939162 2.208274 3.328627 2.833213 3.030134
x3 1704 5.369824 0.1284352 5.351858 5.056246 5.730100 5.273000 5.463832
x4 1704 8.539964 0.2486256 8.521683 7.971776 9.263786 8.358139 8.720746
         Skew   Kurtosis
x1  0.3683705 -0.5940916
x2 -0.5096373  0.8185862
x3  0.3509406 -0.5303737
x4  0.2542659 -0.5582131
> hz_Fm = mvn(Fm,mvnTest = "hz", multivariatePlot = "qq")

> hz_Fm
$multivariateNormality
           Test       HZ p value MVN
1 Henze-Zirkler 4.344818       0  NO

$univariateNormality
              Test  Variable Statistic   p value Normality
1 Anderson-Darling    x1       15.3386  <0.001      NO    
2 Anderson-Darling    x2        3.8241  <0.001      NO    
3 Anderson-Darling    x3        8.7873  <0.001      NO    
4 Anderson-Darling    x4        4.5580  <0.001      NO    

$Descriptives
      n     Mean   Std.Dev   Median      Min      Max     25th     75th
x1 1704 3.555635 0.3204264 3.502550 2.610070 4.442651 3.327729 3.809436
x2 1704 2.879894 0.1495648 2.890372 2.272126 3.261935 2.785011 2.985682
x3 1704 5.278085 0.1299245 5.262690 4.941642 5.648974 5.176150 5.375278
x4 1704 8.360621 0.2437425 8.357024 7.814803 8.994048 8.176532 8.537878
         Skew   Kurtosis
x1  0.2702509 -0.6899596
x2 -0.3893834  0.1217328
x3  0.2937714 -0.5752979
x4  0.1355604 -0.7180855

Berdasarkan hasil dari QQ Plot, terlihat bahwa titik-titik pada plot hampir seluruhnya berada disekitar garis lurus. Selain itu, didukung pula dengan sampel data yang sangat besar, maka data hasil transformasi (databaru) dianggap menyebar mendekati distribusi normal. Sehingga dapat dilanjutkan untuk Uji \(T^{2}\) Hotelling.

Uji \(T^2\) Hotelling

> library(Hotelling)
> mod1<-hotelling.test(.~`Gender`, data = databaru)
> mod1
Test stat:  603.76 
Numerator df:  4 
Denominator df:  3403 
P-value:  0 
> 
> G<-c(rep(1,1704),rep(2,1704))
> mod2<-TwoSamplesHT2(data = databaru[,c(-5)],group = G, 
+                     alpha = 0.05, Homogenity = TRUE)
> summary(mod2)
              Two Independent Samples Hotelling T Square Test 

Hotelling T Sqaure Statistic = 603.7577 
 F value = 150.806 , df1 = 4 , df2 = 3403 , p-value: <2e-16 

           Descriptive Statistics (The First Group) 

             x1        x2        x3        x4
Means 3.5556351 2.8798936 5.2780853 8.3606209
Sd    0.3204264 0.1495648 0.1299245 0.2437425


           Descriptive Statistics (The Second Group) 

            x1        x2        x3        x4
Means 3.640815 2.9284507 5.3698235 8.5399636
Sd    0.322279 0.1544152 0.1284352 0.2486256


           Detection important variable(s)

        Lower       Upper Important Variables?
x1 -0.1191253 -0.05123539               *TRUE*
x2 -0.0646140 -0.03250020               *TRUE*
x3 -0.1053839 -0.07809264               *TRUE*
x4 -0.2053487 -0.15333675               *TRUE*
> 
> 
> library(DescTools)
> with(databaru,
+      HotellingsT2Test(cbind(x1,x2,x3,x4)~`Gender`))

    Hotelling's two sample T2-test

data:  cbind(x1, x2, x3, x4) by Gender
T.2 = 150.81, df1 = 4, df2 = 3403, p-value < 2.2e-16
alternative hypothesis: true location difference is not equal to c(0,0,0,0)

Uji ini menggunakan ‘databaru’ hasil transformasi ‘penguins_dataset’ karena data tersebut tidak melanggar asumsi homogenitas dan diasumsikan menyebar mendekati distribusi normal.

HASIL DAN PEMBAHASAN

Statistika Deskriptif

Varians dari masing-masing variabel dapat dilihat nilainya pada diagonal matriks var yang terbentuk.

Rata-Rata:

  • Bill Length (Panjang Paruh):

    1. Sebagian besar penguin jantan memiliki panjang paruh 40.22 mm.
    2. Sebagian besar penguin betina memiliki panjang paruh 36.89 mm.
  • Bill Depth (Lebar Paruh):

    1. Sebagian besar penguin jantan memiliki lebar paruh 18.91 mm.
    2. Sebagian besar penguin betina memiliki lebar paruh 18.008 mm.
  • Slipper Length (Panjang Sirip)

    1. Sebagian besar penguin jantan memiliki panjang sirip 216.62 mm.
    2. Sebagian besar penguin betina memiliki panjang sirip 197.67 mm.
  • Body Mass (Berat Badan)

    1. Sebagian besar penguin jantan memiliki berat badan 5278.5 gram.
    2. Sebagian besar penguin betina memiliki berat badan 4405.146 gram.

Korelasi:

  • Male:

    1. Panjang paruh pada memiliki hubungan yang tidak signifikan terhadap lebar paruh sebesar 0,315.
    2. Panjang paruh memiliki hubungan dengan berat badan dan panjang sirip, yaitu sebesar 0,66 dan 0,67.
    3. Lebar paruh tidak memiliki hubungan yang signifikan dengan panjang sirip yaitu sebesar 0,48.
    4. Lebar paruh memiliki hubungan dengan berat badan yaitu sebesar 0,55.
    5. Panjang sirip memiliki hubungan yang cukup kuat dengan berat badan, yaitu sebesar 0,76.
  • Female:

    1. Panjang paruh pada memiliki hubungan yang tidak signifikan terhadap lebar paruh sebesar 0,27.
    2. Panjang paruh memiliki hubungan dengan berat badan dan panjang sirip, yaitu sebesar 0,66 dan 0,66.
    3. Lebar paruh tidak memiliki hubungan yang signifikan dengan panjang sirip yaitu sebesar 0,43.
    4. Lebar paruh memiliki hubungan dengan berat badan yaitu sebesar 0,52.
    5. Panjang sirip memiliki hubungan yang cukup kuat dengan berat badan, yaitu sebesar 0,76.

Hasil Uji

Uji Asumsi Normalitas:

Hasil uji normalitas menggunakan uji mardia, uji henze-zirkler, dan uji shapiro wilk yang diterapkan pada data awal (penguins_dataset) ketiganya menunjukkan bahwa data ‘penguins_dataset’ tidak berdistribusi normal. Dapat dilihat dari masing-masing p-valuenya menunjukkan hasil yang sangat kecil jika dibandingkan dengan \(\alpha\) = 0,05.

Selanjutnya untuk hasil uji normalitas pada data setelah transformasi (databaru), ketiga uji yang diterapkan menunjukkan hasil bahwa data hasil transformasi juga belum cukup untuk menghasilkan nilai p-value yang lebih besar jika dibandingkan dengan \(\alpha\) = 0,05. Sehingga, jika dilihat dari hasil ketiga uji tersebut, ‘databaru’ juga belum memenuhi asumsi normalitas multivariat.

Apabila dilihat dari QQPlot yang terbentuk dari data awal maupun data transformasi, dapat dikatakan bahwa kedua data tersebut sudah berdistribusi mendekati distribusi normal. Hal tersebut ditunjukkan dengan titik-titik pada grafik yang sebagian besar berada disekitar garis lurus. Selain itu n pada data berjumlah 3000+, sesuai dengan teori limit pusat yang berarti bahwa semakin besar data maka distribusi rata-rata dari sampel akan mendekati distribusi normal. Sehingga dapat disimpulkan bahwa data hasil transformasi (databaru) menyebar mendekati distribusi normal multivariat.

Uji Asumsi Homogenitas:

Hasil Uji Box-M pada data awal (penguins_dataset) menunjukkan bahwa data tersebut tidak memiliki matriks varian-covarian yang homogen. Sehingga dapat disimpulkan bahwa ‘penguins_dataset’ tidak memenuhi asumsi homogenitas.

Selanjutnya untuk hasil Uji Box-M pada data setelah transformasi (databaru) menunjukkan bahwa data tersebut memenuhi asumsi homogenitas. Dapat dilihat dari nilai-p 0,79 > \(\alpha\) = 0,05.

Maka, dapat dilanjutkan untuk Uji \(T^2\) Hotelling dengan menggunakan data hasil transformasi (databaru).

Uji \(T^2\) Hotelling

Hasil Uji \(T^2\) Hotelling dengan menggunakan 3 metode menunjukkan bahwa p-value < \(\alpha\) =0,05. Maka, \(H_0\) ditolak dan dapat disimpulkan bahwa antara penguin jantan dan penguin betina memang memiliki perbedaan karakteristik tubuh secara rata-rata multivariatnya.

DAFTAR PUSTAKA

Anggoro, A., dkk (2016). Pengendalian Kualitas Data Atribut Multivariat dengan Mahalanobis Distance dan T2 Hotelling (Studi Kasus PT Metec Semarang). JURNAL GAUSSIAN (Vol. 5, Nomor 3) hal 311 - 320.

Tinungki, M. G. (2007). Teorema Limit Pusat Linberg-Levy Pada Kasus Multivariate. JMSK Vol.4, Nomor 1. hal3

https://www.kaggle.com/datasets/samybaladram/palmers-penguin-dataset-extended