Pendahuluan

Principal Component Analysis (PCA) adalah metode statistik multivariat yang digunakan untuk mereduksi dimensi data dengan cara mengubah variabel-variabel asli menjadi sejumlah komponen utama (principal components) yang saling ortogonal. Tujuan utama dari PCA adalah menyederhanakan struktur data kompleks tanpa kehilangan informasi penting, sehingga pola-pola laten dalam data dapat lebih mudah dianalisis dan divisualisasikan.

Dalam studi kasus kali ini, PCA diterapkan pada data kesehatan yang mencakup berbagai indikator dari kabupaten/kota. Dengan bantuan kriteria Kaiser (eigenvalue > 1), proses ini bertujuan untuk mengidentifikasi komponen utama yang berkontribusi signifikan terhadap variasi dalam data, sekaligus menyederhanakan dimensi data untuk eksplorasi dan interpretasi yang lebih efektif.

Metodologi

Tahapan:

  1. Import data dan package
  2. Pembersihan dan standarisasi data
  3. Perhitungan matriks korelasi
  4. Perhitungan eigenvalue dan eigenvector
  5. Penentuan jumlah komponen berdasarkan kriteria Kaiser (eigenvalue > 1)
  6. Kesimpulan akhir

0. Import data dan package

# 1. Install dan load package
library(readxl)
library(dplyr)
library(tidyr)
library(corrplot)
library(ggplot2)
library(factoextra)

# 2. Baca data dari Excel
data_raw <- read_excel("D:/KULIAH NOVIA/SMT 4 NOVIA/ANALISIS MULTIVARIATE/DATA_KESEHATAN.xlsx")

print(data_raw)
## # A tibble: 37 × 27
##    `Kabupaten / Kota` Angka Penemuan TBC per 100.000 pe…¹ Angka Keberhasilan P…²
##    <chr>                                            <dbl>                  <dbl>
##  1 Cilacap                                           83.7                     84
##  2 Banyumas                                         104.                      91
##  3 Purbalingga                                      107.                      90
##  4 Banjarnegara                                      61.7                     88
##  5 Kebumen                                           80.3                     85
##  6 Purworejo                                         67.1                     81
##  7 Wonosobo                                          82.6                     90
##  8 Magelang                                          58.4                     83
##  9 Boyolali                                          59.5                     88
## 10 Klaten                                            74.1                     85
## # ℹ 27 more rows
## # ℹ abbreviated names: ¹​`Angka Penemuan TBC per 100.000 penduduk`,
## #   ²​`Angka Keberhasilan Pengobatan TBC (%)`
## # ℹ 24 more variables: `Jumlah Kasus Baru AIDS` <dbl>,
## #   `Penemuan Kasus Baru Kusta per 100.000 penduduk` <dbl>,
## #   `Angka Kesakitan Malaria per 1.000 penduduk` <dbl>,
## #   `Angka Kesakitan DBD per 100.000 penduduk` <dbl>, …

Tahapan ini bertujuan untuk mempersiapkan lingkungan analisis. Pertama, dilakukan instalasi dan pemanggilan package yang diperlukan seperti readxl untuk membaca file Excel, dplyr dan tidyr untuk manipulasi data, corrplot untuk visualisasi korelasi, ggplot2 untuk plotting, serta factoextra untuk analisis PCA. Selanjutnya, data kesehatan dibaca dari file Excel eksternal menggunakan fungsi read_excel() dan dimuat ke dalam variabel data_raw. Hasil yang ditampilkan pada tahap ini adalah tabel data asli yang memuat informasi kesehatan dari masing-masing kabupaten/kota.

Data yang digunakan dalam analisis ini berasal dari data kesehatan publik berbagai Kabupaten/Kota di Provinsi Jawa Tengah, yang mencakup indikator-indikator utama layanan kesehatan dan penyakit menular. Dataset ini bersifat kuantitatif dan tersusun dalam bentuk data panel lintas wilayah (cross-sectional). Terdapat 35 observasi yang mewakili masing-masing Kabupaten/Kota, dengan jumlah variabel sebanyak 28 variabel utama yang mencerminkan kondisi kesehatan, pelayanan, dan tenaga medis di wilayah tersebut. Beberapa kategori data yang terdapat dalam dataset ini meliputi: - Indikator penyakit menular: Angka penemuan TBC, angka keberhasilan pengobatan TBC, kasus AIDS, malaria, kusta, DBD, dan IMS. - Cakupan layanan kesehatan: Penemuan kasus diare balita, jumlah rumah sakit umum, rumah sakit khusus, puskesmas rawat inap, puskesmas non rawat inap, klinik pratama, posyandu. - Ketersediaan tenaga kesehatan: Jumlah tenaga medis, tenaga keperawatan, kebidanan, kefarmasian, gizi, kesehatan lingkungan, keterapian fisik, tenaga kesehatan tradisional, psikolog klinis, teknik biomedika, dan teknis medis lainnya. Sifat dari data ini beragam dalam skala pengukuran: ada yang berbentuk rasio (misalnya kasus per 100.000 penduduk), persentase, maupun jumlah absolut (misalnya jumlah tenaga medis).

1. Pembersihan dan standarisasi data

# 3. Hapus baris dengan 'Kabupaten / Kota' kosong
data_clean <- data_raw %>%
  filter(!is.na(`Kabupaten / Kota`) & `Kabupaten / Kota` != "")

# 4. Bersihkan dan ubah nilai "-" menjadi NA, lalu jadi 0
data_clean <- data_clean %>%
  mutate(across(-`Kabupaten / Kota`, as.character)) %>%
  mutate(across(-`Kabupaten / Kota`, ~na_if(., "-"))) %>%
  mutate(across(-`Kabupaten / Kota`, as.numeric)) %>%
  mutate(across(-`Kabupaten / Kota`, ~replace_na(., 0)))

# 5. Ambil data numerik saja
X <- data_clean %>% select(-`Kabupaten / Kota`)

# 6. Standarisasi data
X_scaled <- scale(X)

print(X_scaled)
##       Angka Penemuan TBC per 100.000 penduduk
##  [1,]                             -0.24797809
##  [2,]                              0.42103661
##  [3,]                              0.50168406
##  [4,]                             -0.96825453
##  [5,]                             -0.36160284
##  [6,]                             -0.79259328
##  [7,]                             -0.28487348
##  [8,]                             -1.07436960
##  [9,]                             -1.03975976
## [10,]                             -0.56371123
## [11,]                             -0.22642857
## [12,]                             -1.14293626
## [13,]                             -0.57187393
## [14,]                             -0.56175219
## [15,]                             -0.40927300
## [16,]                             -0.01321891
## [17,]                              0.32341074
## [18,]                             -0.24569253
## [19,]                              1.02834131
## [20,]                             -0.53367251
## [21,]                              0.04783807
## [22,]                             -1.17428102
## [23,]                             -0.70378313
## [24,]                             -0.09778445
## [25,]                             -0.22904063
## [26,]                              0.42168962
## [27,]                              0.11542521
## [28,]                              0.07134664
## [29,]                             -0.09092779
## [30,]                              0.46021756
## [31,]                              0.53041676
## [32,]                              1.40970255
## [33,]                              0.73513721
## [34,]                              0.83570165
## [35,]                              4.43185972
##       Angka Keberhasilan Pengobatan TBC (%) Jumlah Kasus Baru AIDS
##  [1,]                          -0.500756932            0.631730759
##  [2,]                           1.277293045            1.673289818
##  [3,]                           1.023285905           -0.664067125
##  [4,]                           0.515271626           -0.688670883
##  [5,]                          -0.246749793            0.008435574
##  [6,]                          -1.262778351           -0.869098436
##  [7,]                           1.023285905           -0.762482155
##  [8,]                          -0.754764072           -0.926507203
##  [9,]                           0.515271626           -0.065375698
## [10,]                          -0.246749793           -0.368822038
## [11,]                          -0.754764072           -0.409828300
## [12,]                           0.515271626           -0.647664621
## [13,]                           0.007257347           -0.295010766
## [14,]                           0.515271626            0.336485671
## [15,]                           1.277293045            0.115051856
## [16,]                          -1.008771212            0.303680661
## [17,]                           0.261264486           -0.270407009
## [18,]                           0.007257347            1.419050992
## [19,]                           1.023285905           -0.278608261
## [20,]                           0.515271626           -0.254004504
## [21,]                           1.023285905           -0.106381960
## [22,]                           0.769278766           -0.368822038
## [23,]                          -1.008771212           -0.967513465
## [24,]                          -1.008771212           -0.057174446
## [25,]                          -1.516785491            0.016636826
## [26,]                           1.023285905           -0.598457106
## [27,]                           1.531300185            0.016636826
## [28,]                           0.769278766            0.188863127
## [29,]                          -1.770792631           -0.073576950
## [30,]                          -2.532814049           -0.910104698
## [31,]                           0.769278766            2.427805041
## [32,]                           0.261264486           -0.655865873
## [33,]                          -1.262778351            3.928634236
## [34,]                          -0.246749793           -0.491840824
## [35,]                          -0.500756932           -0.336017028
##       Penemuan Kasus Baru Kusta per 100.000 penduduk
##  [1,]                                    -0.49836811
##  [2,]                                    -0.74124000
##  [3,]                                    -0.36669057
##  [4,]                                    -0.76464934
##  [5,]                                    -0.43399242
##  [6,]                                    -0.63589797
##  [7,]                                    -0.45447560
##  [8,]                                    -0.60371013
##  [9,]                                    -0.50714661
## [10,]                                    -0.25257005
## [11,]                                    -0.24671771
## [12,]                                    -0.04188600
## [13,]                                    -0.53640828
## [14,]                                    -0.14430185
## [15,]                                    -0.50422044
## [16,]                                     0.68087735
## [17,]                                    -0.49251577
## [18,]                                     0.37070360
## [19,]                                    -0.27012705
## [20,]                                     0.30340175
## [21,]                                    -0.09163084
## [22,]                                    -0.84950819
## [23,]                                    -0.89632687
## [24,]                                    -0.49251577
## [25,]                                     0.15124105
## [26,]                                     1.39486219
## [27,]                                     0.45556246
## [28,]                                     2.47461795
## [29,]                                     2.82283187
## [30,]                                    -0.69149515
## [31,]                                    -0.70905216
## [32,]                                    -0.78513251
## [33,]                                    -0.55396529
## [34,]                                     2.89598605
## [35,]                                     1.01446043
##       Angka Kesakitan Malaria per 1.000 penduduk
##  [1,]                                -0.10303321
##  [2,]                                 0.24878751
##  [3,]                                -0.19098839
##  [4,]                                -0.19098839
##  [5,]                                -0.19098839
##  [6,]                                -0.19098839
##  [7,]                                -0.27894358
##  [8,]                                -0.19098839
##  [9,]                                -0.27894358
## [10,]                                -0.27894358
## [11,]                                -0.01507803
## [12,]                                -0.27894358
## [13,]                                -0.27894358
## [14,]                                -0.19098839
## [15,]                                -0.10303321
## [16,]                                -0.01507803
## [17,]                                -0.10303321
## [18,]                                -0.01507803
## [19,]                                -0.19098839
## [20,]                                -0.27894358
## [21,]                                -0.19098839
## [22,]                                -0.19098839
## [23,]                                -0.27894358
## [24,]                                -0.19098839
## [25,]                                -0.19098839
## [26,]                                -0.19098839
## [27,]                                -0.27894358
## [28,]                                -0.27894358
## [29,]                                -0.27894358
## [30,]                                -0.10303321
## [31,]                                 0.07287715
## [32,]                                 5.70200878
## [33,]                                 0.07287715
## [34,]                                -0.27894358
## [35,]                                -0.27894358
##       Angka Kesakitan DBD per 100.000 penduduk Jumlah Kasus baru IMS
##  [1,]                              -0.19287591           -0.17704068
##  [2,]                               2.43615883            0.92372123
##  [3,]                              -0.51300191           -0.35019424
##  [4,]                               1.34773044           -0.31308991
##  [5,]                              -0.91315940           -0.05335957
##  [6,]                              -0.06482551           -0.39966669
##  [7,]                              -0.22088694           -0.01625523
##  [8,]                              -0.58503026           -0.37493046
##  [9,]                               1.84792731           -0.23888124
## [10,]                               2.11603284            0.10742588
## [11,]                               0.83152728            0.14453022
## [12,]                               0.10724221           -0.39966669
## [13,]                              -0.03681449           -0.23888124
## [14,]                               0.13125166           -0.35019424
## [15,]                               1.51179502           -0.39966669
## [16,]                               0.14325638           -0.42440291
## [17,]                               0.39135403           -0.38729857
## [18,]                               0.14325638            0.61451845
## [19,]                              -0.44897671           -0.43677102
## [20,]                              -0.28091056           -0.36256235
## [21,]                              -0.48499088           -0.36256235
## [22,]                              -0.86914208           -0.01625523
## [23,]                              -1.20527438           -0.39966669
## [24,]                               1.91195251           -0.39966669
## [25,]                              -0.78110743           -0.39966669
## [26,]                               0.23129103           -0.43677102
## [27,]                              -1.37734210           -0.18940879
## [28,]                              -0.97318303           -0.35019424
## [29,]                              -1.04521138           -0.37493046
## [30,]                              -0.05682236           -0.23888124
## [31,]                              -0.14485701            1.07213857
## [32,]                              -0.82512476           -0.04099145
## [33,]                              -0.85713735            5.33913700
## [34,]                              -0.19287591           -0.31308991
## [35,]                              -1.08122555            0.24347511
##       % Penemuan Kasus Diare Balita Jumlah Rumah Sakit Umum
##  [1,]                   -0.78991526              0.67323800
##  [2,]                   -0.08018203              1.97030204
##  [3,]                    1.64315709             -0.40764870
##  [4,]                   -0.06399062             -1.05618072
##  [5,]                    0.85378126              0.45706066
##  [6,]                   -0.81626363              0.45706066
##  [7,]                    0.04014820             -1.05618072
##  [8,]                   -1.22869637             -0.40764870
##  [9,]                   -0.84105859              0.88941534
## [10,]                   -0.63672425              0.67323800
## [11,]                    0.58868434             -0.19147136
## [12,]                   -0.51860466              0.02470598
## [13,]                    0.07796798             -0.19147136
## [14,]                   -0.71953343              0.67323800
## [15,]                   -1.22744169              0.45706066
## [16,]                   -0.25769002              0.02470598
## [17,]                    1.15293391             -1.05618072
## [18,]                   -0.82462820              0.24088332
## [19,]                   -0.96449565             -0.19147136
## [20,]                   -0.21538922             -0.62382604
## [21,]                   -0.44009725             -0.62382604
## [22,]                   -0.03375870             -0.62382604
## [23,]                    0.46004930             -1.05618072
## [24,]                   -0.27238775             -0.40764870
## [25,]                   -0.88981205             -1.27235806
## [26,]                   -0.77934006             -0.84000338
## [27,]                   -0.84028188              0.02470598
## [28,]                    0.25248862              0.24088332
## [29,]                   -0.90176142              1.10559268
## [30,]                    1.63509126             -0.40764870
## [31,]                    0.65816996              1.53794736
## [32,]                   -0.20194617             -1.05618072
## [33,]                    1.57426893              3.48354342
## [34,]                    3.09291522             -0.19147136
## [35,]                    1.51434281             -1.27235806
##       Jumlah Rumah Sakit Khusus Jumlah Puskesmas Rawat Inap
##  [1,]                -0.1819804                  2.17176528
##  [2,]                 2.3657458                  0.94576875
##  [3,]                 0.2426406                  0.07005694
##  [4,]                -0.6066015                  0.77062639
##  [5,]                -0.1819804                  0.07005694
##  [6,]                -0.1819804                  0.24519931
##  [7,]                -0.1819804                 -0.45537014
##  [8,]                -0.6066015                 -0.45537014
##  [9,]                -0.6066015                  0.24519931
## [10,]                -0.1819804                  0.77062639
## [11,]                -0.1819804                 -0.10508542
## [12,]                -0.6066015                 -0.98079722
## [13,]                -0.1819804                  0.94576875
## [14,]                -0.1819804                  1.82148055
## [15,]                -0.1819804                  0.42034167
## [16,]                 0.2426406                 -0.10508542
## [17,]                -0.6066015                  0.77062639
## [18,]                -0.1819804                  0.42034167
## [19,]                 0.6672616                 -0.10508542
## [20,]                -0.6066015                  0.59548403
## [21,]                -0.6066015                  0.77062639
## [22,]                -0.6066015                 -0.10508542
## [23,]                -0.6066015                 -0.80565486
## [24,]                -0.6066015                  0.07005694
## [25,]                -0.6066015                 -1.15593958
## [26,]                -0.1819804                 -0.63051250
## [27,]                -0.6066015                 -0.63051250
## [28,]                -0.1819804                 -0.10508542
## [29,]                 0.2426406                  2.17176528
## [30,]                 0.2426406                 -1.85650903
## [31,]                 1.5165037                 -0.98079722
## [32,]                 0.2426406                 -1.68136667
## [33,]                 4.4888510                 -0.10508542
## [34,]                -0.6066015                 -1.15593958
## [35,]                -0.1819804                 -1.85650903
##       Jumlah Puskesmas Non Rawat Inap Jumlah Klinik Pratama Jumlah Posyandu
##  [1,]                      0.06139848            0.85986911      0.22947277
##  [2,]                      1.35076647            0.91053480      1.82212140
##  [3,]                     -0.51165396           -0.30544172     -0.32195682
##  [4,]                      0.77771403           -0.86276429     -0.19367864
##  [5,]                      1.35076647           -0.30544172      0.79422997
##  [6,]                      0.06139848           -0.35610741      0.71426435
##  [7,]                      0.20466159           -0.81209860      1.30567676
##  [8,]                      0.92097714           -0.10277897     -0.21033814
##  [9,]                     -0.22512774           -0.15344466      0.32110005
## [10,]                      0.63445092           -0.30544172     -0.48355402
## [11,]                     -1.80102196            0.50520929     -0.01042409
## [12,]                      2.06708202           -0.55877016      1.16407097
## [13,]                     -1.37123263            0.35321223      0.03622252
## [14,]                     -1.51449574            0.50520929      1.44561660
## [15,]                      0.34792470           -0.35610741     -0.99000295
## [16,]                      0.20466159           -0.45743878      1.75881528
## [17,]                     -1.80102196           -1.01476135      0.29277889
## [18,]                      0.20466159            0.60654067     -0.03541335
## [19,]                     -0.79818019            0.15054947     -0.32195682
## [20,]                     -0.94144330            0.25188085     -0.31529302
## [21,]                     -0.36839085            0.65720635      0.35775096
## [22,]                      0.20466159            0.85986911     -0.32862062
## [23,]                      0.77771403           -0.86276429      0.45770798
## [24,]                      0.63445092            0.09988379      0.30444054
## [25,]                      0.34792470           -0.86276429     -0.37193534
## [26,]                      0.77771403           -0.76143291      0.19115591
## [27,]                      0.49118781           -0.25477603      0.16616666
## [28,]                      0.63445092            0.04921810      1.21238353
## [29,]                      0.06139848            0.20121516     -0.20200839
## [30,]                     -1.37123263           -0.81209860     -2.05121338
## [31,]                     -0.36839085            0.09988379     -1.68470428
## [32,]                     -1.37123263           -0.30544172     -2.02789008
## [33,]                      1.92381891            4.76112709      0.34442335
## [34,]                     -0.65491707           -0.81209860     -1.33485469
## [35,]                     -0.94144330           -0.60943585     -2.03455388
##       Tenaga Medis Psikologi Klinis Tenaga Keperawatan Tenaga Kebidanan
##  [1,]  0.266466089       5.72054746        -0.15579844       0.05311423
##  [2,]  5.668194258       0.37200696         5.70482888       5.73242217
##  [3,] -0.166829260      -0.16928407        -0.11792686      -0.08915603
##  [4,]  0.003965426      -0.16928407         0.01724844      -0.08390919
##  [5,] -0.251764996      -0.19561714        -0.20894989      -0.20236684
##  [6,] -0.278230479      -0.19269125        -0.24654025      -0.19812900
##  [7,] -0.198834031      -0.18976535        -0.15729830      -0.10106234
##  [8,] -0.258535236      -0.19269125        -0.22535466      -0.19752360
##  [9,] -0.268075120      -0.18683945        -0.26472611      -0.24555242
## [10,] -0.224068561      -0.19269125        -0.24129072      -0.20478846
## [11,] -0.201911412      -0.18391355        -0.19451369      -0.19974342
## [12,] -0.110205436      -0.17220996        -0.10761529      -0.15756684
## [13,] -0.122822702      -0.15758048        -0.12420754      -0.20256864
## [14,] -0.217298321      -0.19269125        -0.20210676      -0.21144792
## [15,] -0.221298917      -0.19561714        -0.22779194      -0.19167135
## [16,] -0.211759034      -0.20146894        -0.17135953      -0.13375423
## [17,] -0.190525100      -0.19269125        -0.14961150      -0.08754162
## [18,] -0.252072735      -0.18976535        -0.23547875      -0.19570738
## [19,] -0.281307861      -0.19854304        -0.24072827      -0.22557405
## [20,] -0.160982235      -0.17513586        -0.13883122      -0.09985153
## [21,] -0.159751282      -0.18976535        -0.15186129      -0.18420468
## [22,] -0.212066772      -0.18391355        -0.20707506      -0.20216504
## [23,] -0.208681652      -0.19561714        -0.23032296      -0.18299387
## [24,] -0.202219150      -0.19269125        -0.22947929      -0.20882450
## [25,] -0.257304284      -0.19561714        -0.24944624      -0.23021549
## [26,] -0.228069157      -0.19854304        -0.20220050      -0.17189477
## [27,] -0.294540603      -0.19561714        -0.25900787      -0.21245693
## [28,] -0.264690000      -0.19561714        -0.24635277      -0.18016864
## [29,] -0.241609637      -0.19561714        -0.21091846      -0.14081729
## [30,] -0.208681652      -0.19269125        -0.18495206      -0.10267675
## [31,] -0.192371529      -0.19561714        -0.15945436      -0.02720288
## [32,] -0.210220343      -0.17513586        -0.19620104      -0.30871639
## [33,]  0.045510080      -0.15172868         0.10086590      -0.20922810
## [34,] -0.247148924      -0.18683945        -0.26238257      -0.29095783
## [35,]  0.559740569      -0.09906253         0.37684099      -0.10509838
##       Tenaga Kefarmasian Tenaga Kesehatan Masyarakat
##  [1,]         0.29768320                  2.54918343
##  [2,]         5.67913502                  5.04691850
##  [3,]        -0.16840137                 -0.15040348
##  [4,]        -0.09314309                 -0.05310799
##  [5,]        -0.23784571                 -0.25786418
##  [6,]        -0.27789733                 -0.23608160
##  [7,]        -0.19391813                 -0.23898595
##  [8,]        -0.27822033                 -0.26367286
##  [9,]        -0.28435727                 -0.27529024
## [10,]        -0.21975788                 -0.27819458
## [11,]        -0.21297495                 -0.29271629
## [12,]        -0.12253581                 -0.22882075
## [13,]        -0.03080468                 -0.26948155
## [14,]        -0.22169586                 -0.30142932
## [15,]        -0.17033935                 -0.27819458
## [16,]        -0.19585611                 -0.24334246
## [17,]        -0.17906027                 -0.14459480
## [18,]        -0.27628234                 -0.25495983
## [19,]        -0.28468026                 -0.23753378
## [20,]        -0.17130834                 -0.15766434
## [21,]        -0.17679929                 -0.29852498
## [22,]        -0.21814290                 -0.25060332
## [23,]        -0.22589482                 -0.28109892
## [24,]        -0.19779409                 -0.17799474
## [25,]        -0.27046840                 -0.21429903
## [26,]        -0.20845299                 -0.22736857
## [27,]        -0.28048130                 -0.29707281
## [28,]        -0.25302657                 -0.28545544
## [29,]        -0.23655372                 -0.27674241
## [30,]        -0.11962883                 -0.25641201
## [31,]        -0.14385360                 -0.18815994
## [32,]        -0.25205757                 -0.31740321
## [33,]         0.08773519                 -0.25641201
## [34,]        -0.28274228                 -0.29562064
## [35,]         0.42042203                  0.18940466
##       Tenaga Kesehatan Lingkungan Tenaga Gizi Tenaga Keterapianfisik
##  [1,]                  3.97817945  3.06688888            3.472353703
##  [2,]                  4.01256409  4.75012204            4.419922670
##  [3,]                 -0.14582769 -0.21592794           -0.279867185
##  [4,]                 -0.01688531 -0.11862136           -0.179021492
##  [5,]                 -0.24898160 -0.28592039           -0.336949653
##  [6,]                 -0.19095753 -0.24494920           -0.338852402
##  [7,]                 -0.21244792 -0.22958500           -0.274158939
##  [8,]                 -0.25757776 -0.26031340           -0.243714956
##  [9,]                 -0.29840951 -0.30299173           -0.331241406
## [10,]                 -0.25113064 -0.27055620           -0.344560649
## [11,]                 -0.26187584 -0.26202053           -0.192340735
## [12,]                 -0.19095753 -0.16642108           -0.026801578
## [13,]                 -0.23393832 -0.21251367           -0.002065842
## [14,]                 -0.24468352 -0.23641354           -0.232298462
## [15,]                 -0.26832295 -0.27055620           -0.190437986
## [16,]                 -0.26832295 -0.23812067           -0.199951730
## [17,]                 -0.26832295 -0.22617074           -0.255131449
## [18,]                 -0.27047199 -0.24324207           -0.310311168
## [19,]                 -0.27477007 -0.26202053           -0.329338658
## [20,]                 -0.24253448 -0.21763507           -0.213270973
## [21,]                 -0.29196239 -0.28250613           -0.258936947
## [22,]                 -0.26832295 -0.25860627           -0.304602921
## [23,]                 -0.28981335 -0.28250613           -0.302700173
## [24,]                 -0.25542872 -0.22787787           -0.312213917
## [25,]                 -0.28981335 -0.30128459           -0.277964436
## [26,]                 -0.26187584 -0.22787787           -0.321727662
## [27,]                 -0.31345279 -0.30128459           -0.346463398
## [28,]                 -0.27047199 -0.27567760           -0.316019415
## [29,]                 -0.27262103 -0.27226333           -0.316019415
## [30,]                 -0.23608736 -0.23812067           -0.268450692
## [31,]                 -0.19095753 -0.21592794           -0.310311168
## [32,]                 -0.30270759 -0.30469886           -0.287478181
## [33,]                 -0.22749120 -0.13910695            0.039794635
## [34,]                 -0.32204895 -0.32006306           -0.258936947
## [35,]                 -0.05126995  0.09477027            0.230069528
##       Tenaga Keteknisan Medis Tenaga Teknik Biomedika
##  [1,]              1.18019920              0.90735474
##  [2,]              5.54398593              5.59706861
##  [3,]             -0.16659151             -0.18027991
##  [4,]             -0.05339641             -0.01669258
##  [5,]             -0.24821519             -0.25417843
##  [6,]             -0.26592599             -0.28260094
##  [7,]             -0.21279359             -0.20743920
##  [8,]             -0.27054620             -0.26428421
##  [9,]             -0.31135804             -0.29144350
## [10,]             -0.22665422             -0.25354682
## [11,]             -0.16274134             -0.20175469
## [12,]             -0.12808977             -0.14743612
## [13,]             -0.08496783             -0.13543551
## [14,]             -0.20740335             -0.24217782
## [15,]             -0.20278314             -0.25607327
## [16,]             -0.15119082             -0.21312370
## [17,]             -0.25206536             -0.21059725
## [18,]             -0.27208627             -0.26049454
## [19,]             -0.26361588             -0.27312677
## [20,]             -0.23743470             -0.18785925
## [21,]             -0.28055665             -0.21691336
## [22,]             -0.23435456             -0.22196626
## [23,]             -0.27285630             -0.24217782
## [24,]             -0.21048349             -0.21880820
## [25,]             -0.28363679             -0.30154928
## [26,]             -0.24898522             -0.23396687
## [27,]             -0.30057755             -0.29081189
## [28,]             -0.28363679             -0.25923132
## [29,]             -0.29749741             -0.23649332
## [30,]             -0.26515595             -0.21122886
## [31,]             -0.20124307             -0.18027991
## [32,]             -0.24436502             -0.25038876
## [33,]              0.07211925              0.10141873
## [34,]             -0.28594689             -0.26491582
## [35,]              0.33085092              0.40143409
##       Tenaga Kesehatan Tradisional
##  [1,]                   5.74614553
##  [2,]                  -0.07530694
##  [3,]                  -0.17476895
##  [4,]                  -0.17184359
##  [5,]                  -0.17476895
##  [6,]                  -0.17476895
##  [7,]                  -0.17476895
##  [8,]                  -0.17476895
##  [9,]                  -0.17476895
## [10,]                  -0.17476895
## [11,]                  -0.17476895
## [12,]                  -0.14551542
## [13,]                  -0.16599289
## [14,]                  -0.17476895
## [15,]                  -0.16014218
## [16,]                  -0.16891824
## [17,]                  -0.17184359
## [18,]                  -0.17476895
## [19,]                  -0.17476895
## [20,]                  -0.17476895
## [21,]                  -0.17476895
## [22,]                  -0.17476895
## [23,]                  -0.17476895
## [24,]                  -0.17476895
## [25,]                  -0.17476895
## [26,]                  -0.17476895
## [27,]                  -0.17476895
## [28,]                  -0.17476895
## [29,]                  -0.17476895
## [30,]                  -0.16891824
## [31,]                  -0.17476895
## [32,]                  -0.17476895
## [33,]                  -0.17476895
## [34,]                  -0.17476895
## [35,]                  -0.14844077
## attr(,"scaled:center")
##        Angka Penemuan TBC per 100.000 penduduk 
##                                   9.133486e+01 
##          Angka Keberhasilan Pengobatan TBC (%) 
##                                   8.597143e+01 
##                         Jumlah Kasus Baru AIDS 
##                                   1.859714e+02 
## Penemuan Kasus Baru Kusta per 100.000 penduduk 
##                                   3.183143e+00 
##     Angka Kesakitan Malaria per 1.000 penduduk 
##                                   3.171429e-02 
##       Angka Kesakitan DBD per 100.000 penduduk 
##                                   3.962000e+01 
##                          Jumlah Kasus baru IMS 
##                                   3.631429e+01 
##                  % Penemuan Kasus Diare Balita 
##                                   2.714303e+02 
##                        Jumlah Rumah Sakit Umum 
##                                   8.885714e+00 
##                      Jumlah Rumah Sakit Khusus 
##                                   1.428571e+00 
##                    Jumlah Puskesmas Rawat Inap 
##                                   1.060000e+01 
##                Jumlah Puskesmas Non Rawat Inap 
##                                   1.457143e+01 
##                          Jumlah Klinik Pratama 
##                                   2.402857e+01 
##                                Jumlah Posyandu 
##                                   1.429257e+03 
##                                   Tenaga Medis 
##                                   1.158114e+03 
##                               Psikologi Klinis 
##                                   6.885714e+01 
##                             Tenaga Keperawatan 
##                                   3.686000e+03 
##                               Tenaga Kebidanan 
##                                   1.760800e+03 
##                             Tenaga Kefarmasian 
##                                   1.102371e+03 
##                    Tenaga Kesehatan Masyarakat 
##                                   2.685714e+02 
##                    Tenaga Kesehatan Lingkungan 
##                                   1.728571e+02 
##                                    Tenaga Gizi 
##                                   2.274857e+02 
##                         Tenaga Keterapianfisik 
##                                   1.990857e+02 
##                        Tenaga Keteknisan Medis 
##                                   4.913429e+02 
##                        Tenaga Teknik Biomedika 
##                                   5.874286e+02 
##                   Tenaga Kesehatan Tradisional 
##                                   5.974286e+01 
## attr(,"scaled:scale")
##        Angka Penemuan TBC per 100.000 penduduk 
##                                   3.062713e+01 
##          Angka Keberhasilan Pengobatan TBC (%) 
##                                   3.936897e+00 
##                         Jumlah Kasus Baru AIDS 
##                                   1.219326e+02 
## Penemuan Kasus Baru Kusta per 100.000 penduduk 
##                                   3.417440e+00 
##     Angka Kesakitan Malaria per 1.000 penduduk 
##                                   1.136943e-01 
##       Angka Kesakitan DBD per 100.000 penduduk 
##                                   2.499016e+01 
##                          Jumlah Kasus baru IMS 
##                                   8.085309e+01 
##                  % Penemuan Kasus Diare Balita 
##                                   1.673727e+02 
##                        Jumlah Rumah Sakit Umum 
##                                   4.625832e+00 
##                      Jumlah Rumah Sakit Khusus 
##                                   2.355041e+00 
##                    Jumlah Puskesmas Rawat Inap 
##                                   5.709641e+00 
##                Jumlah Puskesmas Non Rawat Inap 
##                                   6.980164e+00 
##                          Jumlah Klinik Pratama 
##                                   1.973722e+01 
##                                Jumlah Posyandu 
##                                   6.002580e+02 
##                                   Tenaga Medis 
##                                   3.249516e+03 
##                               Psikologi Klinis 
##                                   3.417755e+02 
##                             Tenaga Keperawatan 
##                                   1.066763e+04 
##                               Tenaga Kebidanan 
##                                   4.955357e+03 
##                             Tenaga Kefarmasian 
##                                   3.096005e+03 
##                    Tenaga Kesehatan Masyarakat 
##                                   6.886239e+02 
##                    Tenaga Kesehatan Lingkungan 
##                                   4.653241e+02 
##                                    Tenaga Gizi 
##                                   5.857774e+02 
##                         Tenaga Keterapianfisik 
##                                   5.255554e+02 
##                        Tenaga Keteknisan Medis 
##                                   1.298643e+03 
##                        Tenaga Teknik Biomedika 
##                                   1.583252e+03 
##                   Tenaga Kesehatan Tradisional 
##                                   3.418391e+02

Data yang didapatkan seringkali masih terdapat banyak masalah dan tidak bisa langsung digunakan untuk analisis, maka dari itu dilakukan pembersihan data terlebih dahulu dengan menghapus baris yang tidak termasuk dalam ke 35 kabupaten/kota. Lalu mengisi missing value dengan angka 0 karena ini merupakan data Kesehatan yang tidak bisa dilakukan imputasi mean/modus menghindari perubahan data asli secara masif. PCA sangat sensitif terhadap skala variabel. Oleh karena itu, seluruh variabel diubah ke dalam skala standar (z-score) sehingga memiliki rata-rata 0 dan standar deviasi 1. Ini bertujuan agar variabel dengan skala besar tidak mendominasi pembentukan komponen utama.

3. Perhitungan eigenvalue dan eigenvector

# 7. Hitung matriks korelasi
R <- cor(X_scaled)

# 8. Visualisasi matriks korelasi
corrplot(R, method = "color", type = "upper", tl.cex = 0.6, tl.col = "black",
         addCoef.col = "black", title = "Matriks Korelasi Variabel", mar = c(0,0,2,0))

# 9. Hitung eigenvalue dan eigenvector
eigen_R <- eigen(R)
eigenvalues <- eigen_R$values
eigenvectors <- eigen_R$vectors

# 10. Hitung proporsi dan kumulatif variansi
prop_var <- eigenvalues / sum(eigenvalues)
cum_var <- cumsum(prop_var)

# 11. Buat ringkasan PCA
pca_summary <- data.frame(
  Komponen = paste0("PC", 1:length(eigenvalues)),
  Eigenvalue = eigenvalues,
  Proporsi = round(prop_var, 4),
  Kumulatif = round(cum_var, 4),
  Dipertahankan = ifelse(eigenvalues > 1, "Ya", "Tidak")
)

# 12. Tampilkan ringkasan PCA
print(pca_summary)
##    Komponen   Eigenvalue Proporsi Kumulatif Dipertahankan
## 1       PC1 1.070293e+01   0.4117    0.4117            Ya
## 2       PC2 3.734479e+00   0.1436    0.5553            Ya
## 3       PC3 2.911276e+00   0.1120    0.6673            Ya
## 4       PC4 2.470260e+00   0.0950    0.7623            Ya
## 5       PC5 1.374762e+00   0.0529    0.8151            Ya
## 6       PC6 1.010315e+00   0.0389    0.8540            Ya
## 7       PC7 1.001075e+00   0.0385    0.8925            Ya
## 8       PC8 7.381957e-01   0.0284    0.9209         Tidak
## 9       PC9 6.415455e-01   0.0247    0.9456         Tidak
## 10     PC10 4.279513e-01   0.0165    0.9620         Tidak
## 11     PC11 3.180480e-01   0.0122    0.9743         Tidak
## 12     PC12 2.315643e-01   0.0089    0.9832         Tidak
## 13     PC13 1.739550e-01   0.0067    0.9899         Tidak
## 14     PC14 1.387793e-01   0.0053    0.9952         Tidak
## 15     PC15 8.008079e-02   0.0031    0.9983         Tidak
## 16     PC16 3.564569e-02   0.0014    0.9996         Tidak
## 17     PC17 6.092259e-03   0.0002    0.9999         Tidak
## 18     PC18 1.301752e-03   0.0001    0.9999         Tidak
## 19     PC19 6.035990e-04   0.0000    1.0000         Tidak
## 20     PC20 4.532453e-04   0.0000    1.0000         Tidak
## 21     PC21 3.111841e-04   0.0000    1.0000         Tidak
## 22     PC22 1.770864e-04   0.0000    1.0000         Tidak
## 23     PC23 1.099483e-04   0.0000    1.0000         Tidak
## 24     PC24 5.016807e-05   0.0000    1.0000         Tidak
## 25     PC25 2.982314e-05   0.0000    1.0000         Tidak
## 26     PC26 7.247488e-06   0.0000    1.0000         Tidak
# 13. Visualisasi Scree Plot
pca_summary$Komponen <- factor(paste0("PC", 1:nrow(pca_summary)), levels = paste0("PC", 1:nrow(pca_summary)))

ggplot(pca_summary, aes(x = Komponen, y = Eigenvalue)) +
  geom_col(fill = "#0072B2") +
  geom_line(aes(group = 1), color = "red", linetype = "dashed") +
  geom_point(color = "red", size = 2) +
  geom_hline(yintercept = 1, color = "darkgreen", linetype = "dotted") +
  labs(title = "Scree Plot - PCA", x = "Komponen Utama", y = "Nilai Eigen") +
  theme_minimal(base_size = 12) +
  theme(
    axis.text.x = element_text(angle = 45, hjust = 1)
  )

# 14. Hitung Loading Factor
loading_factors <- eigenvectors %*% diag(sqrt(eigenvalues))
rownames(loading_factors) <- colnames(X_scaled)
colnames(loading_factors) <- paste0("PC", 1:ncol(loading_factors))
print("Matriks Loading Factor:")
## [1] "Matriks Loading Factor:"
print(round(loading_factors, 3))
##                                                   PC1    PC2    PC3    PC4
## Angka Penemuan TBC per 100.000 penduduk        -0.074  0.252  0.586 -0.561
## Angka Keberhasilan Pengobatan TBC (%)          -0.165 -0.208  0.094  0.294
## Jumlah Kasus Baru AIDS                         -0.487  0.747 -0.207 -0.007
## Penemuan Kasus Baru Kusta per 100.000 penduduk  0.185  0.019  0.100 -0.090
## Angka Kesakitan Malaria per 1.000 penduduk      0.002  0.058  0.321 -0.326
## Angka Kesakitan DBD per 100.000 penduduk       -0.393 -0.238 -0.008  0.395
## Jumlah Kasus baru IMS                          -0.333  0.902 -0.076 -0.047
## % Penemuan Kasus Diare Balita                   0.039  0.358  0.458 -0.362
## Jumlah Rumah Sakit Umum                        -0.520  0.637 -0.339  0.151
## Jumlah Rumah Sakit Khusus                      -0.535  0.791  0.047 -0.034
## Jumlah Puskesmas Rawat Inap                    -0.337 -0.176 -0.653  0.195
## Jumlah Puskesmas Non Rawat Inap                -0.298  0.207 -0.257  0.409
## Jumlah Klinik Pratama                          -0.383  0.749 -0.359 -0.021
## Jumlah Posyandu                                -0.341 -0.125 -0.397  0.569
## Tenaga Medis                                   -0.931 -0.083  0.321  0.125
## Psikologi Klinis                               -0.422 -0.263 -0.586 -0.625
## Tenaga Keperawatan                             -0.911 -0.058  0.353  0.184
## Tenaga Kebidanan                               -0.917 -0.111  0.305  0.199
## Tenaga Kefarmasian                             -0.936 -0.075  0.307  0.128
## Tenaga Kesehatan Masyarakat                    -0.966 -0.215  0.028 -0.124
## Tenaga Kesehatan Lingkungan                    -0.894 -0.255 -0.201 -0.300
## Tenaga Gizi                                    -0.956 -0.213 -0.057 -0.184
## Tenaga Keterapianfisik                         -0.936 -0.202 -0.113 -0.253
## Tenaga Keteknisan Medis                        -0.971 -0.114  0.197  0.037
## Tenaga Teknik Biomedika                        -0.963 -0.098  0.236  0.060
## Tenaga Kesehatan Tradisional                   -0.352 -0.261 -0.617 -0.638
##                                                   PC5    PC6    PC7    PC8
## Angka Penemuan TBC per 100.000 penduduk        -0.175 -0.192  0.131  0.017
## Angka Keberhasilan Pengobatan TBC (%)           0.176 -0.471  0.565  0.488
## Jumlah Kasus Baru AIDS                          0.021 -0.148  0.061  0.051
## Penemuan Kasus Baru Kusta per 100.000 penduduk -0.788 -0.274  0.208 -0.338
## Angka Kesakitan Malaria per 1.000 penduduk      0.619 -0.008  0.339 -0.409
## Angka Kesakitan DBD per 100.000 penduduk        0.286 -0.166 -0.484  0.033
## Jumlah Kasus baru IMS                           0.086  0.073 -0.012  0.096
## % Penemuan Kasus Diare Balita                  -0.310  0.005 -0.324  0.367
## Jumlah Rumah Sakit Umum                        -0.038 -0.124 -0.087 -0.119
## Jumlah Rumah Sakit Khusus                       0.083 -0.007  0.002 -0.033
## Jumlah Puskesmas Rawat Inap                    -0.054 -0.476 -0.149 -0.165
## Jumlah Puskesmas Non Rawat Inap                -0.196  0.591  0.323  0.059
## Jumlah Klinik Pratama                           0.098 -0.120  0.043 -0.024
## Jumlah Posyandu                                -0.239  0.059  0.157  0.010
## Tenaga Medis                                   -0.032  0.009 -0.009 -0.035
## Psikologi Klinis                               -0.001  0.051  0.039  0.086
## Tenaga Keperawatan                             -0.026  0.005 -0.007 -0.044
## Tenaga Kebidanan                               -0.023  0.003 -0.015 -0.049
## Tenaga Kefarmasian                             -0.028  0.008 -0.017 -0.034
## Tenaga Kesehatan Masyarakat                    -0.027  0.029  0.004  0.003
## Tenaga Kesehatan Lingkungan                    -0.010  0.045  0.015  0.031
## Tenaga Gizi                                    -0.020  0.034  0.012  0.006
## Tenaga Keterapianfisik                         -0.023  0.039  0.012  0.017
## Tenaga Keteknisan Medis                        -0.021  0.018 -0.005 -0.023
## Tenaga Teknik Biomedika                        -0.031  0.015 -0.006 -0.026
## Tenaga Kesehatan Tradisional                    0.000  0.053  0.040  0.089
##                                                   PC9   PC10   PC11   PC12
## Angka Penemuan TBC per 100.000 penduduk         0.118 -0.203  0.323  0.054
## Angka Keberhasilan Pengobatan TBC (%)           0.110  0.075 -0.068  0.006
## Jumlah Kasus Baru AIDS                          0.121 -0.056  0.029 -0.175
## Penemuan Kasus Baru Kusta per 100.000 penduduk  0.221  0.160 -0.037  0.031
## Angka Kesakitan Malaria per 1.000 penduduk     -0.049  0.340  0.029  0.023
## Angka Kesakitan DBD per 100.000 penduduk        0.451  0.174  0.212  0.062
## Jumlah Kasus baru IMS                          -0.006  0.013  0.059  0.116
## % Penemuan Kasus Diare Balita                  -0.177  0.387 -0.069  0.046
## Jumlah Rumah Sakit Umum                         0.161  0.079 -0.135 -0.205
## Jumlah Rumah Sakit Khusus                      -0.027 -0.010  0.041 -0.080
## Jumlah Puskesmas Rawat Inap                    -0.148 -0.004 -0.043  0.179
## Jumlah Puskesmas Non Rawat Inap                 0.296  0.078 -0.009  0.158
## Jumlah Klinik Pratama                          -0.159 -0.061 -0.019  0.235
## Jumlah Posyandu                                -0.369  0.176  0.346 -0.112
## Tenaga Medis                                   -0.034 -0.038 -0.019  0.031
## Psikologi Klinis                                0.060  0.044  0.032 -0.014
## Tenaga Keperawatan                             -0.050 -0.030 -0.031  0.020
## Tenaga Kebidanan                               -0.048 -0.013 -0.068 -0.035
## Tenaga Kefarmasian                             -0.037 -0.036 -0.029  0.013
## Tenaga Kesehatan Masyarakat                     0.001 -0.010 -0.018 -0.008
## Tenaga Kesehatan Lingkungan                     0.017  0.023 -0.015 -0.017
## Tenaga Gizi                                     0.001  0.002 -0.013 -0.011
## Tenaga Keterapianfisik                         -0.003  0.006  0.001  0.004
## Tenaga Keteknisan Medis                        -0.026 -0.016 -0.013  0.010
## Tenaga Teknik Biomedika                        -0.030 -0.024 -0.022  0.021
## Tenaga Kesehatan Tradisional                    0.066  0.047  0.036 -0.020
##                                                  PC13   PC14   PC15   PC16
## Angka Penemuan TBC per 100.000 penduduk        -0.138 -0.003 -0.078  0.007
## Angka Keberhasilan Pengobatan TBC (%)          -0.012 -0.042  0.016 -0.007
## Jumlah Kasus Baru AIDS                          0.139  0.249 -0.029  0.040
## Penemuan Kasus Baru Kusta per 100.000 penduduk  0.109 -0.032  0.058 -0.009
## Angka Kesakitan Malaria per 1.000 penduduk     -0.016  0.043 -0.024  0.001
## Angka Kesakitan DBD per 100.000 penduduk        0.059 -0.035  0.017  0.015
## Jumlah Kasus baru IMS                           0.056  0.019  0.055 -0.146
## % Penemuan Kasus Diare Balita                  -0.047  0.047 -0.033  0.025
## Jumlah Rumah Sakit Umum                        -0.137 -0.135 -0.131 -0.031
## Jumlah Rumah Sakit Khusus                      -0.139 -0.072  0.200  0.059
## Jumlah Puskesmas Rawat Inap                    -0.190  0.142  0.008 -0.007
## Jumlah Puskesmas Non Rawat Inap                -0.118  0.067 -0.028  0.030
## Jumlah Klinik Pratama                           0.156 -0.133 -0.066  0.074
## Jumlah Posyandu                                 0.021 -0.031 -0.018 -0.005
## Tenaga Medis                                    0.008  0.007 -0.021 -0.013
## Psikologi Klinis                                0.008 -0.017  0.011 -0.004
## Tenaga Keperawatan                              0.005  0.008 -0.005 -0.008
## Tenaga Kebidanan                                0.010  0.015  0.021  0.014
## Tenaga Kefarmasian                              0.008  0.000 -0.012 -0.004
## Tenaga Kesehatan Masyarakat                     0.009  0.013  0.005  0.005
## Tenaga Kesehatan Lingkungan                    -0.001 -0.005  0.017  0.003
## Tenaga Gizi                                     0.013 -0.006  0.006  0.001
## Tenaga Keterapianfisik                          0.028 -0.022 -0.004 -0.011
## Tenaga Keteknisan Medis                         0.009 -0.006 -0.008 -0.003
## Tenaga Teknik Biomedika                         0.009  0.001 -0.008 -0.008
## Tenaga Kesehatan Tradisional                    0.006 -0.017  0.013 -0.001
##                                                  PC17   PC18   PC19   PC20
## Angka Penemuan TBC per 100.000 penduduk        -0.006 -0.002 -0.001 -0.001
## Angka Keberhasilan Pengobatan TBC (%)           0.001  0.000  0.000  0.000
## Jumlah Kasus Baru AIDS                          0.005  0.001  0.001  0.000
## Penemuan Kasus Baru Kusta per 100.000 penduduk  0.000  0.000  0.000  0.000
## Angka Kesakitan Malaria per 1.000 penduduk      0.000  0.000  0.000  0.000
## Angka Kesakitan DBD per 100.000 penduduk       -0.001  0.000  0.000  0.000
## Jumlah Kasus baru IMS                          -0.009 -0.001 -0.001 -0.001
## % Penemuan Kasus Diare Balita                   0.001  0.000  0.000  0.000
## Jumlah Rumah Sakit Umum                        -0.002  0.000  0.000  0.000
## Jumlah Rumah Sakit Khusus                       0.008  0.002  0.001  0.001
## Jumlah Puskesmas Rawat Inap                     0.001 -0.001  0.000  0.000
## Jumlah Puskesmas Non Rawat Inap                 0.000 -0.001  0.000  0.000
## Jumlah Klinik Pratama                          -0.005  0.000  0.000  0.000
## Jumlah Posyandu                                -0.002  0.000  0.000  0.000
## Tenaga Medis                                    0.012  0.007  0.010  0.006
## Psikologi Klinis                               -0.002 -0.003  0.005  0.001
## Tenaga Keperawatan                              0.002  0.004  0.002  0.007
## Tenaga Kebidanan                               -0.038 -0.022 -0.002 -0.003
## Tenaga Kefarmasian                              0.016 -0.014  0.009 -0.003
## Tenaga Kesehatan Masyarakat                    -0.028  0.009 -0.012  0.009
## Tenaga Kesehatan Lingkungan                    -0.018  0.014  0.004 -0.006
## Tenaga Gizi                                    -0.013 -0.001 -0.002 -0.002
## Tenaga Keterapianfisik                          0.050 -0.009 -0.012  0.003
## Tenaga Keteknisan Medis                         0.015  0.010 -0.006 -0.015
## Tenaga Teknik Biomedika                         0.003  0.006  0.006  0.002
## Tenaga Kesehatan Tradisional                   -0.001 -0.006  0.005  0.001
##                                                  PC21   PC22   PC23   PC24
## Angka Penemuan TBC per 100.000 penduduk         0.001  0.000  0.000  0.000
## Angka Keberhasilan Pengobatan TBC (%)           0.000  0.000  0.000  0.000
## Jumlah Kasus Baru AIDS                          0.000  0.000  0.000  0.000
## Penemuan Kasus Baru Kusta per 100.000 penduduk  0.000  0.000  0.000  0.000
## Angka Kesakitan Malaria per 1.000 penduduk      0.000  0.000  0.000  0.000
## Angka Kesakitan DBD per 100.000 penduduk        0.000  0.000  0.000  0.000
## Jumlah Kasus baru IMS                           0.000  0.000  0.000  0.000
## % Penemuan Kasus Diare Balita                   0.000  0.000  0.000  0.000
## Jumlah Rumah Sakit Umum                         0.000  0.000  0.000  0.000
## Jumlah Rumah Sakit Khusus                      -0.001  0.000  0.000  0.000
## Jumlah Puskesmas Rawat Inap                     0.000  0.000  0.000  0.000
## Jumlah Puskesmas Non Rawat Inap                 0.000  0.000  0.000  0.000
## Jumlah Klinik Pratama                           0.000  0.000  0.000  0.000
## Jumlah Posyandu                                 0.000  0.000  0.000  0.000
## Tenaga Medis                                    0.000 -0.004  0.002 -0.005
## Psikologi Klinis                               -0.003 -0.003 -0.002  0.000
## Tenaga Keperawatan                              0.006 -0.001 -0.003  0.004
## Tenaga Kebidanan                                0.004 -0.004 -0.001 -0.001
## Tenaga Kefarmasian                             -0.008  0.007 -0.003  0.000
## Tenaga Kesehatan Masyarakat                    -0.008  0.001 -0.002 -0.001
## Tenaga Kesehatan Lingkungan                     0.008  0.005 -0.003 -0.001
## Tenaga Gizi                                     0.000  0.005  0.008  0.000
## Tenaga Keterapianfisik                          0.005  0.001  0.000 -0.001
## Tenaga Keteknisan Medis                        -0.004 -0.005 -0.001  0.000
## Tenaga Teknik Biomedika                        -0.001 -0.002  0.003  0.003
## Tenaga Kesehatan Tradisional                   -0.001 -0.004  0.000  0.001
##                                                  PC25   PC26
## Angka Penemuan TBC per 100.000 penduduk         0.000  0.000
## Angka Keberhasilan Pengobatan TBC (%)           0.000  0.000
## Jumlah Kasus Baru AIDS                          0.000  0.000
## Penemuan Kasus Baru Kusta per 100.000 penduduk  0.000  0.000
## Angka Kesakitan Malaria per 1.000 penduduk      0.000  0.000
## Angka Kesakitan DBD per 100.000 penduduk        0.000  0.000
## Jumlah Kasus baru IMS                           0.000  0.000
## % Penemuan Kasus Diare Balita                   0.000  0.000
## Jumlah Rumah Sakit Umum                         0.000  0.000
## Jumlah Rumah Sakit Khusus                       0.000  0.000
## Jumlah Puskesmas Rawat Inap                     0.000  0.000
## Jumlah Puskesmas Non Rawat Inap                 0.000  0.000
## Jumlah Klinik Pratama                           0.000  0.000
## Jumlah Posyandu                                 0.000  0.000
## Tenaga Medis                                    0.001  0.000
## Psikologi Klinis                                0.000 -0.002
## Tenaga Keperawatan                              0.003  0.000
## Tenaga Kebidanan                               -0.001  0.000
## Tenaga Kefarmasian                              0.000  0.000
## Tenaga Kesehatan Masyarakat                     0.000  0.000
## Tenaga Kesehatan Lingkungan                    -0.001  0.000
## Tenaga Gizi                                     0.002  0.000
## Tenaga Keterapianfisik                         -0.001  0.000
## Tenaga Keteknisan Medis                         0.001  0.000
## Tenaga Teknik Biomedika                        -0.004  0.000
## Tenaga Kesehatan Tradisional                    0.001  0.002

Matriks korelasi dihitung dari data yang telah distandarkan menggunakan fungsi cor(). Matriks ini menunjukkan hubungan linear antar variabel dalam skala -1 hingga 1. Selanjutnya, dilakukan dekomposisi eigen terhadap matriks korelasi menggunakan eigen(), menghasilkan eigenvalue dan eigenvector. Eigenvalue menunjukkan besarnya variansi yang dijelaskan oleh setiap komponen utama. Eigenvector adalah vektor arah yang digunakan untuk mengubah basis data ke ruang komponen baru.

Visualisasi matriks korelasi dibuat menggunakan corrplot, sedangkan Scree Plot dan Variansi Kumulatif divisualisasikan dengan ggplot2. Output yang dihasilkan adalah: Matriks korelasi berwarna, Tabel ringkasan PCA yang menampilkan eigenvalue, proporsi variansi, dan variansi kumulatif, Scree plot yang menunjukkan penurunan nilai eigenvalue dan Tabel Loading Faktor.

Scree plot menunjukkan bahwa hanya 7 komponen utama (principal components) yang memiliki nilai eigen lebih dari 1, sehingga layak dipertahankan berdasarkan Kaiser Criterion. Komponen-komponen ini menjelaskan sebagian besar variasi dalam data. Komponen pertama memiliki kontribusi paling besar terhadap total varians.

Tabel nilai eigen menguatkan hasil scree plot, di mana hanya 7 nilai eigen di atas 1. Total proporsi varians kumulatif yang dijelaskan oleh ketujuh komponen tersebut sudah mendekati atau melebihi 80%, artinya data telah berhasil direduksi tanpa kehilangan banyak informasi.

Pada Tabel Loading Faktor, PC1 merepresentasikan dimensi sumber daya tenaga kesehatan, dengan kontribusi kuat dari variabel Tenaga Medis (-0,931), Tenaga Keperawatan (-0,911), dan Tenaga Kebidanan (-0,917), menunjukkan peran dominan ketersediaan tenaga kesehatan dalam komponen ini. PC2 mencerminkan dimensi penyakit menular dan fasilitas kesehatan, ditandai dengan loading tinggi pada Jumlah Kasus Baru AIDS (0,747) dan Jumlah Kasus Baru IMS (0,902), sementara PC3 mengidentifikasi dimensi layanan kesehatan spesifik seperti Psikologi Klinis (-0,586) dan Tenaga Kesehatan Tradisional (-0,617). Interpretasi ini memperlihatkan struktur data kesehatan yang terbagi atas ketersediaan tenaga medis, beban penyakit infeksi, serta layanan kesehatan pendukung, sehingga membantu memahami variasi utama dalam sistem kesehatan secara lebih komprehensif. Interpretasi ini sangat penting untuk memahami arti dari masing-masing komponen utama, karena membantu kita mengetahui apa yang direpresentasikan oleh komponen tersebut secara konseptual.

4. Penentuan jumlah komponen berdasarkan kriteria Kaiser (eigenvalue > 1)

# 15. Hitung Skor Komponen Utama (PC Scores)
PC_scores <- X_scaled %*% eigenvectors

# 16. Buat dataframe skor PC
PC_df <- as.data.frame(PC_scores)
colnames(PC_df) <- paste0("PC", 1:ncol(PC_df))
PC_df$Kabupaten <- data_clean$`Kabupaten / Kota`

# 17. Ambil hanya komponen dengan eigenvalue > 1 (reduksi dimensi)
retained_components <- which(eigenvalues > 1)
PC_reduced <- PC_df[, c(retained_components, ncol(PC_df))]  # kolom terpilih + kabupaten
print(PC_reduced)
##            PC1         PC2         PC3         PC4          PC5         PC6
## 1   -6.3266634 -2.87345123 -6.11349019 -5.78453157  0.006381886  0.29908545
## 2  -16.9765126 -1.09837244  3.19916899  2.03203665 -0.086311477  0.02442812
## 3    0.7898494 -0.12312316  1.00359490 -0.51652940 -0.185366011 -0.63326827
## 4    0.3738161 -1.59204016 -0.20221515  1.21226315  0.751238382  0.29459451
## 5    0.6712553  0.50741540 -0.45767237  0.62176730 -0.635919967  1.16915111
## 6    0.8861997 -0.53405688 -0.88030912  0.83761821  0.240475572  0.90203583
## 7    0.8818886 -0.97834766  0.19863860  0.90020541 -0.009459620  0.42547703
## 8    1.1880426 -0.79150285 -0.57729443  0.72614967  0.413857523  1.66518892
## 9    0.5753929 -0.54170042 -1.00903741  1.59700917  1.016828715 -0.61634351
## 10   0.4297877 -0.22757174 -0.81113953  1.26293992  0.705437289 -0.13579630
## 11   0.8279958  0.05860894  0.27647797 -0.29314296  0.516845687 -0.71074107
## 12   0.5032434 -0.82876634 -0.56432309  1.73313147 -0.348537545  1.80741699
## 13   0.5426311 -0.36970198 -0.39198592  0.19083894  0.475980835 -1.03141312
## 14   0.3111360 -0.17070866 -1.51970105  1.15195939  0.289732063 -2.07251697
## 15   0.4663551 -0.53019494 -0.49413886  1.12826054  1.317657583 -0.81694136
## 16   0.5113184  0.02366274 -0.41513442  0.76450243 -0.905986847  0.44855755
## 17   1.0449038 -1.18288756  0.75892853 -0.30922675  0.176806197 -1.31286167
## 18   0.3685259  1.10298523 -0.91461949  0.56868029  0.140694049 -0.50470041
## 19   0.8697420  0.04275591  0.34291004 -0.18354536  0.513838752 -1.03471424
## 20   0.9009665 -0.70398434 -0.14768749  0.17340877 -0.008456826 -1.02758592
## 21   0.7908631 -0.43889697 -0.41336340  0.50047857  0.107266442 -1.02534704
## 22   0.9489014 -0.13424163 -0.42743859  0.50161362  0.684414264  0.35148128
## 23   1.4508911 -0.88489854  0.28541474  0.17747947 -0.269493108  2.19648776
## 24   0.5823842 -0.49172581 -0.38987790  0.91473171  0.455250500  0.62310937
## 25   1.5520769 -0.70678449  0.41109595 -0.25412776 -0.328728209  1.72680115
## 26   1.0540958 -0.94386418  0.50418520  0.58229904 -0.869879662 -0.03256030
## 27   1.1210283 -0.19125237 -0.03061832  0.45999522 -0.461419669 -0.10821621
## 28   0.8392602  0.29166486 -0.23582661  0.55526985 -2.343690316 -0.55500128
## 29   0.7298970  0.56289218 -1.31121517  0.07198241 -2.362167822 -1.01106843
## 30   1.5594143  0.18828347  2.17206536 -2.11336858  0.219664186  1.45269018
## 31  -0.1653296  3.07925719  0.59909734 -0.74953290  1.017544369 -0.64774053
## 32   1.5957016  0.13688478  3.10019182 -2.95999087  4.004509032 -0.03412932
## 33  -2.8885279  9.76967133 -1.85656697 -0.24496306  0.168045575  0.70300407
## 34   1.7192036  0.17470892  2.25447335 -1.80987782 -2.764770396 -0.60673171
## 35   0.2702657  0.39928341  4.05741272 -3.44578417 -1.642281427 -0.17183164
##             PC7       Kabupaten
## 1   0.226501177         Cilacap
## 2  -0.028020361        Banyumas
## 3  -0.034779249     Purbalingga
## 4  -0.583419240    Banjarnegara
## 5   0.308319756         Kebumen
## 6  -0.736450704       Purworejo
## 7   0.779531896        Wonosobo
## 8   0.222436724        Magelang
## 9  -0.823024874        Boyolali
## 10 -1.272472985          Klaten
## 11 -1.672974375       Sukoharjo
## 12  1.076221384        Wonogiri
## 13 -0.858243813     Karanganyar
## 14 -0.265732922          Sragen
## 15  0.031481339        Grobogan
## 16 -0.075330324           Blora
## 17 -1.139107116         Rembang
## 18  0.311559726            Pati
## 19  0.828949836           Kudus
## 20 -0.008188420          Jepara
## 21  0.763132906           Demak
## 22  0.554971681        Semarang
## 23 -0.080280886      Temanggung
## 24 -1.316571719          Kendal
## 25  0.039059939          Batang
## 26  1.367159117      Pekalongan
## 27  2.071697782        Pemalang
## 28  1.645462725           Tegal
## 29 -0.159207949          Brebes
## 30 -2.604189459   Kota Magelang
## 31 -0.007283058  Kota Surakarta
## 32  2.080528654   Kota Salatiga
## 33 -0.043984388   Kota Semarang
## 34 -0.736045164 Kota Pekalongan
## 35  0.138292367      Kota Tegal
# 18. Visualisasi hasil reduksi (scatter plot PC1 vs PC2)
ggplot(PC_reduced, aes(x = PC1, y = PC2, label = Kabupaten)) +
  geom_point(color = "steelblue", size = 3) +
  geom_text(size = 2.5, vjust = -1) +
  theme_minimal() +
  labs(title = "Scatterplot Komponen Utama (PC1 vs PC2)",
       x = "PC1", y = "PC2")

Pada tahap ini, ditentukan berapa banyak komponen utama yang akan dipertahankan menggunakan Kaiser Criterion, yaitu hanya mempertahankan komponen dengan eigenvalue > 1. Alasan penggunaan kriteria ini adalah karena komponen dengan eigenvalue di bawah 1 dianggap tidak cukup kuat untuk menjelaskan lebih banyak variasi daripada variabel asli.

Skor dari komponen utama (Principal Component Scores) dihitung dengan mengalikan data hasil standarisasi dengan vektor eigen menggunakan operasi matriks X_scaled %*% eigenvectors. Kemudian diambil hanya skor dari komponen yang memenuhi kriteria. Output berupa Dataframe PC tereduksi (PC1, PC2, dst) + nama kabupaten dan Scatter plot PC1 vs PC2 untuk melihat distribusi dan pola klaster antar daerah.

Plot PCA scores menampilkan distribusi individu (observasi) dalam ruang dua dimensi berdasarkan PC1 dan PC2. Titik-titik dengan pola yang serupa cenderung berdekatan, mengindikasikan adanya kemiripan karakteristik antara observasi. Plot ini berguna untuk mengidentifikasi klaster atau outlier dalam data.

5. Kesimpulan akhir

# 19. Ringkasan akhir
cat("\n\nJumlah variabel asli:", ncol(X),
    "\nJumlah komponen utama terpilih (Eigenvalue > 1):", length(retained_components),
    "\nTotal variansi yang dijelaskan:", round(cum_var[max(retained_components)] * 100, 2), "%\n")
## 
## 
## Jumlah variabel asli: 26 
## Jumlah komponen utama terpilih (Eigenvalue > 1): 7 
## Total variansi yang dijelaskan: 89.25 %
# 20. (Opsional) Simpan hasil PCA tereduksi untuk analisis lanjutan
write.csv(PC_reduced, "PCA_Hasil_Tereduksi.csv", row.names = FALSE)

Bagian ini memberikan ringkasan dari hasil analisis PCA. Informasi yang ditampilkan meliputi: Jumlah variabel asli dari data sebelum dilkakukan PCA ada sebanyak 26 variabel Jumlah komponen utama yang dipertahankan berdasarkan kriteria Kaiser ada 7 variabel Total persentase variansi yang dijelaskan oleh komponen terpilih sebesar 89.25 %

Hasil ini memberikan insight bahwa sebagian besar variasi dalam data kesehatan dapat dijelaskan hanya dengan beberapa komponen utama saja. Data tereduksi ini bisa digunakan untuk analisis lanjutan seperti klasterisasi atau visualisasi dua dimensi.