1 PENDAHULUAN
1.1 Latar Belakang
Indonesia merupakan negara kepulauan dengan keragaman sosial, budaya, dan ekonomi yang sangat luas. Setiap provinsi memiliki karakteristik demografi, tingkat pendapatan, serta pola konsumsi yang berbeda. Salah satu indikator penting yang dapat mencerminkan kesejahteraan masyarakat di suatu wilayah adalah rata-rata pengeluaran per kapita sebulan untuk kebutuhan makanan dan non-makanan. Pengeluaran ini tidak hanya mencerminkan tingkat pendapatan, tetapi juga pola konsumsi dan prioritas masyarakat dalam memenuhi kebutuhan hidup.
Data pengeluaran per kapita memiliki peran strategis dalam membantu pemerintah dan pembuat kebijakan memahami disparitas ekonomi antarprovinsi, serta merancang program-program yang lebih terfokus untuk mengurangi kesenjangan. Selain itu, data ini juga bermanfaat bagi pelaku usaha dalam menentukan strategi bisnis, seperti distribusi produk atau investasi di wilayah tertentu.
Namun, data tersebut sering kali hanya disajikan dalam bentuk statistik deskriptif, sehingga kurang memberikan wawasan mendalam tentang pengelompokan atau pola-pola tersembunyi di dalamnya. Oleh karena itu, diperlukan metode analisis yang mampu mengelompokkan provinsi berdasarkan kemiripan rata-rata pengeluaran per kapita. Dengan melakukan pengelompokan, dapat diperoleh wawasan yang lebih terstruktur tentang wilayah-wilayah yang memiliki kesamaan pola konsumsi, yang pada gilirannya dapat mempermudah perencanaan pembangunan ekonomi.
Analisis cluster hierarki adalah salah satu metode statistik yang cocok untuk tujuan ini, karena mampu mengelompokkan data berdasarkan tingkat kemiripan secara bertahap, sehingga menghasilkan struktur kelompok yang mudah dipahami. Dengan menggunakan analisis ini, penelitian ini bertujuan untuk mengelompokkan provinsi-provinsi di Indonesia berdasarkan rata-rata pengeluaran per kapita untuk kebutuhan makanan dan non-makanan pada tahun 2024. Hasil dari penelitian ini diharapkan dapat memberikan kontribusi terhadap pemahaman yang lebih baik mengenai karakteristik ekonomi antarprovinsi serta menjadi acuan dalam pengambilan keputusan strategis.
1.2 Rumusan Masalah
Berdasarkan latar belakang masalah, penelitian ini dirumuskan dalam beberapa pertanyaan berikut:
Bagaimana pengelompokan provinsi-provinsi di Indonesia berdasarkan kemiripan rata-rata pengeluaran per kapita untuk makanan dan non-makanan menggunakan analisis cluster hierarki?
Berapa cluster yang terbentuk dan apa karakteristik utama dari masing-masing cluster yang terbentuk menggunakan analisis cluster hierarki?
1.3 Tujuan Penelitian
Penelitian ini bertujuan untuk menjawab rumusan masalah yang telah disusun, dengan fokus pada hal-hal berikut:
Mengetahui bagaimana pengelompokan provinsi-provinsi di Indonesia berdasarkan kemiripan rata-rata pengeluaran per kapita untuk makanan dan non-makanan menggunakan analisis cluster hierarki.
Mengetahui berapa cluster yang terbentuk dan apa karakteristik utama dari masing-masing cluster yang terbentuk menggunakan analisis cluster hierarki.
2 TINJAUAN PUSTAKA
2.1 Analisis Cluster Hierarki
Analisis cluster hierarki adalah metode statistik yang digunakan untuk mengelompokkan objek ke dalam grup (cluster) berdasarkan kemiripan atau kedekatan karakteristik antarobjek. Metode ini membentuk struktur hierarki dengan menggabungkan atau memisahkan objek secara bertahap hingga terbentuk kelompok yang memiliki kesamaan. Hasil analisis biasanya disajikan dalam bentuk dendrogram, yaitu diagram pohon yang menunjukkan proses pengelompokan secara visual. Analisis cluster hierarki banyak digunakan dalam berbagai bidang seperti pemasaran, biologi, ekonomi, dan sosiologi untuk mengidentifikasi pola atau kelompok dalam data.
2.2 Jarak Euclidian
Jarak Euclidian adalah salah satu metrik pengukuran yang digunakan untuk menghitung kedekatan atau kemiripan antara dua objek dalam ruang multidimensi. Rumus jarak Euclidian antara dua titik \(A(x_{1}, x_{2}, ..., x_{n})\) dan \(B(y_{1}, y_{2}, ..., y_{n})\) adalah:
\[d=\sqrt{(x_{1}-x_{2})^{2}+(y_{1}-y_{2})^{2}}\]
Jarak Euclidian banyak digunakan dalam analisis cluster karena memberikan ukuran geometris yang intuitif. Semakin kecil nilai jarak, semakin mirip objek tersebut.
2.3 Linkage
Linkage adalah metode yang digunakan dalam analisis cluster hierarki untuk menentukan cara penggabungan dua cluster berdasarkan jarak antaranggota cluster. Jenis-jenis linkage yang umum digunakan adalah:
- Single linkage : Mengukur jarak minimum antara anggota dari dua cluster.
\[d_{ij}=min(d_{pj},d_{q})\]
- Complete linkage : Mengukur jarak maksimum antara anggota dari dua cluster.
\[d_{ij}=max(d_{pj},d_{q})\]
- Average linkage : Menghitung rata-rata jarak antara semua anggota dari dua cluster.
\[d_{ij}=\frac{1}{n_{i}\times n_{j}}\sum_{i=1}^{n_{i}}\sum_{j=1}^{n_{j}}\sqrt{\sum_{k=1}^{p}(x_{ik}-y_{ik})^{2}}\]
- Centroid linkage : Menggunakan jarak antara pusat (centroid) dari dua cluster.
\[C_{i}=\frac{1}{M}\sum_{j=1}^{M}x_{j}\]
2.4 Ward’s Method
Ward’s method adalah metode linkage dalam analisis cluster hierarki yang bertujuan untuk meminimalkan jumlah kuadrat galat (sum of squared errors atau SSE) dalam setiap penggabungan cluster. Metode ini menggabungkan dua cluster yang menghasilkan peningkatan terkecil pada variasi total dalam data.
\[ESS=\sum_{k=1}^{K}\left[ \sum_{i=1}^{nk}\sum_{j=1}^{p}X_{ijk}^{2}-\frac{1}{nk}\sum_{j=1}^{p}\left( \sum_{i=1}^{nk}X_{ijk} \right)^{2} \right]\]
Ward’s method cenderung menghasilkan cluster dengan ukuran yang seragam, sehingga cocok untuk data dengan distribusi yang merata. Secara matematis, metode ini fokus pada pengurangan kehilangan informasi selama proses pengelompokan.
2.5 Validasi Cluster
Validitas cluster digunakan untuk memecahkan permasalahan utama dalam analisis cluster hierarki yaitu menentukan jumlah cluster optimum. Beberapa metode yang umum digunakan yaitu indeks Connectivity, indeks Dunn, dan indeks Sillhouette.
2.5.1 Indeks Connectivity
Indeks Connectivity adalah alat ukur yang digunakan dalam analisis cluster untuk mengevaluasi kepadatan dan homogenitas suatu cluster. Indeks ini mengukur seberapa baik objek dalam satu cluster terhubung satu sama lain dibandingkan dengan objek di cluster lain. Semakin rendah nilai indeks Connectivity, semakin baik pengelompokan yang dihasilkan, karena menunjukkan bahwa objek dalam cluster lebih dekat satu sama lain dan lebih terpisah dari objek di cluster lain.
\[Conn=\sum_{i=1}^{N}\sum_{j=1}^{L}x_{i,nn(i)}(j)\]
2.5.2 Indeks Dunn
Indeks Dunn adalah metode validasi yang digunakan untuk mengevaluasi kualitas pengelompokan dalam analisis cluster. Dikenalkan oleh J.C. Dunn pada tahun 1974, indeks ini bertujuan untuk memaksimalkan jarak antar cluster (inter-cluster) sambil meminimalkan jarak dalam cluster (intra-cluster). Dengan kata lain, indeks ini membantu menentukan seberapa baik objek-objek dalam satu cluster terpisah dari objek-objek di cluster lain.
\[S(i)=\frac{b(i)-a(i)}{max\left[ a(i),b(i)\right]}\]
2.5.3 Indeks Sillhouette
Indeks Silhouette adalah ukuran statistik yang digunakan untuk mengevaluasi seberapa baik objek dikelompokkan dalam analisis cluster. Indeks ini mengukur seberapa mirip suatu objek dengan anggota cluster lainnya dibandingkan dengan objek di cluster lain. Nilai indeks ini berkisar antara -1 hingga 1, di mana nilai yang lebih tinggi menunjukkan bahwa objek tersebut lebih baik dikelompokkan dalam cluster yang sesuai.
\[D=\frac{min_{1\le i\lt j\le k}d(C_{i},C_{j})}{max_{1\le l\le k}d'(C_{l})}\]
2.6 Data
Data dalam penelitian adalah informasi yang digunakan untuk menjawab pertanyaan atau menguji hipotesis yang telah dirumuskan, yang dapat diperoleh melalui data primer maupun data sekunder. Data primer adalah data yang dikumpulkan langsung oleh peneliti, sedangkan data sekunder adalah data yang telah tersedia sebelumnya dan dikumpulkan oleh pihak lain. Dalam penelitian ini, digunakan data sekunder yang berasal dari sumber yang sudah ada sebelumnya, sehingga efisiensi dalam waktu, tenaga, dan biaya serta memudahkan analisis dengan memanfaatkan informasi yang telah tersedia.
Sumber:
Penelitian ini menggunakan data yang dibatasi pada tahun 2024 dengan tujuan berfokus pada tahun saat ini, sehingga dapat dijadikan referensi untuk membuat kebijakan selanjutnya.
3 SOURCE CODE
3.1 Library
3.2 Input Data
> pengeluaran <- read_excel("C:/Users/kathrine/Downloads/Rata-Rata Pengeluaran Per Kapita Sebulan untuk Makanan dan Non Makanan Tahun 2024.xlsx")
> pengeluaran
# A tibble: 38 × 4
No. Provinsi Pengeluaran untuk Ma…¹ Pengeluaran untuk No…²
<dbl> <chr> <dbl> <dbl>
1 1 Aceh 722434. 542299.
2 2 Sumatera Utara 734270. 606687.
3 3 Sumatera Barat 797728. 683125.
4 4 Riau 824229. 738936.
5 5 Jambi 773667. 698833.
6 6 Sumatera Selatan 711510. 577490.
7 7 Bengkulu 724415. 691561.
8 8 Lampung 656937. 544537.
9 9 Kepulauan Bangka Belitung 929142. 863932.
10 10 Kepulauan Riau 938634. 1170437.
# ℹ 28 more rows
# ℹ abbreviated names: ¹`Pengeluaran untuk Makanan (rupiah)`,
# ²`Pengeluaran untuk Non Makanan (rupiah)`3.3 Data
> data.frame(pengeluaran)
No. Provinsi Pengeluaran.untuk.Makanan..rupiah.
1 1 Aceh 722434.0
2 2 Sumatera Utara 734270.2
3 3 Sumatera Barat 797727.9
4 4 Riau 824229.3
5 5 Jambi 773667.4
6 6 Sumatera Selatan 711510.5
7 7 Bengkulu 724415.3
8 8 Lampung 656936.6
9 9 Kepulauan Bangka Belitung 929141.9
10 10 Kepulauan Riau 938634.1
11 11 DKI Jakarta 1108227.7
12 12 Jawa Barat 803842.3
13 13 Jawa Tengah 647310.5
14 14 DI Yogyakarta 748181.8
15 15 Jawa Timur 689147.7
16 16 Banten 873268.3
17 17 Bali 804982.1
18 18 Nusa Tenggara Barat 730070.6
19 19 Nusa Tenggara Timur 541264.6
20 20 Kalimantan Barat 735784.6
21 21 Kalimantan Tengah 835242.9
22 22 Kalimantan Selatan 799947.5
23 23 Kalimantan Timur 925953.5
24 24 Kalimantan Utara 833208.9
25 25 Sulawesi Utara 717919.4
26 26 Sulawesi Tengah 644418.0
27 27 Sulawesi Selatan 636654.8
28 28 Sulawesi Tenggara 604047.4
29 29 Gorontalo 620823.0
30 30 Sulawesi Barat 579734.3
31 31 Maluku 640897.2
32 32 Maluku Utara 726547.0
33 33 Papua Barat 836641.8
34 34 Papua Barat Daya 810862.6
35 35 Papua 765392.8
36 36 Papua Selatan 749474.5
37 37 Papua Tengah 887039.2
38 38 Papua Pegunungan 1157570.8
Pengeluaran.untuk.Non.Makanan..rupiah.
1 542298.9
2 606687.2
3 683125.3
4 738936.2
5 698833.3
6 577490.5
7 691560.7
8 544536.8
9 863932.2
10 1170437.4
11 1686257.5
12 829190.1
13 624367.6
14 1010682.8
15 667795.6
16 898893.9
17 1067777.5
18 547068.3
19 434589.1
20 652292.1
21 755447.7
22 734091.7
23 1116837.6
24 824833.2
25 664509.8
26 587035.3
27 646426.3
28 623116.1
29 641445.5
30 529854.7
31 636671.9
32 720763.3
33 806846.1
34 831867.4
35 813501.1
36 677615.7
37 600648.7
38 570904.33.4 Analisis
> #Statistik Deskriptif
> statdes <- summary(pengeluaran)
> statdes
No. Provinsi Pengeluaran untuk Makanan (rupiah)
Min. : 1.00 Length:38 Min. : 541265
1st Qu.:10.25 Class :character 1st Qu.: 694738
Median :19.50 Mode :character Median : 748828
Mean :19.50 Mean : 770195
3rd Qu.:28.75 3rd Qu.: 830964
Max. :38.00 Max. :1157571
Pengeluaran untuk Non Makanan (rupiah)
Min. : 434589
1st Qu.: 610794
Median : 680371
Mean : 745241
3rd Qu.: 822000
Max. :1686258 > # Uji Sampel Representatif
> kmo <- KMO(pengeluaran[,3:4])
> kmo
Kaiser-Meyer-Olkin factor adequacy
Call: KMO(r = pengeluaran[, 3:4])
Overall MSA = 0.5
MSA for each item =
Pengeluaran untuk Makanan (rupiah) Pengeluaran untuk Non Makanan (rupiah)
0.5 0.5 > #Uji Non-Multikolinearitas
> korelasi <- cor(pengeluaran[,3:4], method = 'pearson')
> korelasi
Pengeluaran untuk Makanan (rupiah)
Pengeluaran untuk Makanan (rupiah) 1.0000000
Pengeluaran untuk Non Makanan (rupiah) 0.6356269
Pengeluaran untuk Non Makanan (rupiah)
Pengeluaran untuk Makanan (rupiah) 0.6356269
Pengeluaran untuk Non Makanan (rupiah) 1.0000000> #Standarisasi
> datastand <- scale(pengeluaran[,3:4])
> datastand
Pengeluaran untuk Makanan (rupiah) Pengeluaran untuk Non Makanan (rupiah)
[1,] -0.36641853 -0.88844857
[2,] -0.27561308 -0.60656750
[3,] 0.21122604 -0.27193379
[4,] 0.41454092 -0.02760260
[5,] 0.02663724 -0.20316647
[6,] -0.45022230 -0.73438581
[7,] -0.35121852 -0.23500487
[8,] -0.86890537 -0.87865167
[9,] 1.21941671 0.51960928
[10,] 1.29223939 1.86143909
[11,] 2.59333849 4.11961551
[12,] 0.25813505 0.36751437
[13,] -0.94275582 -0.52916524
[14,] -0.16888493 1.16205975
[15,] -0.62178689 -0.33904470
[16,] 0.79076202 0.67266586
[17,] 0.26687932 1.41201099
[18,] -0.30783180 -0.86756904
[19,] -1.75632544 -1.35998460
[20,] -0.26399423 -0.40691635
[21,] 0.49903610 0.04468208
[22,] 0.22825488 -0.04881108
[23,] 1.19495590 1.62678786
[24,] 0.48343145 0.34844022
[25,] -0.40105422 -0.35342954
[26,] -0.96494639 -0.69259995
[27,] -1.02450529 -0.43259618
[28,] -1.27466456 -0.53464429
[29,] -1.14596474 -0.45440101
[30,] -1.46119135 -0.94292733
[31,] -0.99195806 -0.47529932
[32,] -0.33486383 -0.10716072
[33,] 0.50976847 0.26969590
[34,] 0.31199368 0.37923512
[35,] -0.03684445 0.29883006
[36,] -0.15896783 -0.29605396
[37,] 0.89641003 -0.63300268
[38,] 2.97189193 -0.76321884
attr(,"scaled:center")
Pengeluaran untuk Makanan (rupiah) Pengeluaran untuk Non Makanan (rupiah)
770195.3 745241.3
attr(,"scaled:scale")
Pengeluaran untuk Makanan (rupiah) Pengeluaran untuk Non Makanan (rupiah)
130346.4 228423.3 > #Menghitung Jarak Euclidien
> jarak <- dist(datastand, method = "euclidean")
> jarak
1 2 3 4 5 6 7
2 0.29614619
3 0.84484538 0.59075549
4 1.16230523 0.90084011 0.31785951
5 0.79000278 0.50407108 0.19698215 0.42578390
6 0.17538075 0.21639293 0.80707854 1.11685179 0.71385503
7 0.65362046 0.37917670 0.56365560 0.79334937 0.37919476 0.50910026
8 0.50258233 0.65270631 1.23886660 1.53997366 1.12172939 0.44284100 0.82600295
9 2.12073108 1.87173401 1.28179126 0.97327585 1.39467832 2.08810873 1.74250897
10 3.21139039 2.92390457 2.39162491 2.08298659 2.42164096 3.12641642 2.66383768
11 5.81729038 5.52880538 4.99601491 4.68471738 5.02736505 5.72927491 5.25672280
12 1.40267961 1.11073064 0.64116644 0.42494731 0.61584727 1.30994433 0.85693711
13 0.67915328 0.67161785 1.18230375 1.44700363 1.02274049 0.53357732 0.66064113
14 2.06000094 1.77184459 1.48351671 1.32502159 1.37915610 1.91720016 1.40891273
15 0.60585279 0.43749828 0.83571192 1.08211436 0.66250792 0.43096287 0.28988192
16 1.94323058 1.66541102 1.10821048 0.79493285 1.16231190 1.87612273 1.45876171
17 2.38603863 2.09020504 1.68486418 1.44716662 1.63294656 2.26301876 1.75917769
18 0.06219614 0.26298260 0.79006480 1.10786549 0.74384159 0.19496879 0.63405034
19 1.46771504 1.66136883 2.24835793 2.54713614 2.12536682 1.44819862 1.79997357
20 0.49230480 0.19998895 0.49401882 0.77736019 0.35493755 0.37671891 0.19277353
21 1.27269184 1.01203131 0.42787877 0.11119583 0.53346939 1.22802210 0.89507414
22 1.02889629 0.75164828 0.22377159 0.18748943 0.25391978 0.96454341 0.60865224
23 2.96045679 2.67403241 2.13842661 1.82922261 2.17110602 2.87780340 2.42010899
24 1.50071279 1.21991325 0.67746564 0.38230107 0.71619194 1.42976275 1.01835590
25 0.53613897 0.28251426 0.61768008 0.87827025 0.45331996 0.38411610 0.12848346
26 0.62975572 0.69468121 1.24913634 1.53140677 1.10579529 0.51641741 0.76554239
27 0.80054955 0.76883390 1.24613175 1.49494943 1.07588969 0.64875106 0.70168184
28 0.97472473 1.00163705 1.50893594 1.76366278 1.34285663 0.84829341 0.97084312
29 0.89223852 0.88355342 1.36940173 1.61781791 1.19921400 0.74996602 0.82447330
30 1.09612749 1.23236917 1.80200230 2.08714899 1.66158962 1.03225384 1.31650822
31 0.74966126 0.72827293 1.22024978 1.47603243 1.05432096 0.60050266 0.68431614
32 0.78192481 0.50290932 0.57040714 0.75361593 0.37403226 0.63774516 0.12888600
33 1.45224043 1.17671650 0.61845801 0.31217733 0.67602855 1.38915887 0.99800875
34 1.43779868 1.14764477 0.65891962 0.41956271 0.64855216 1.34949056 0.90395862
35 1.23217272 0.93635207 0.62234262 0.55705209 0.50599451 1.11284153 0.61952464
36 0.62766803 0.33169982 0.37097882 0.63322857 0.20755079 0.52627367 0.20171098
37 1.28840544 1.17232120 0.77449845 0.77376166 0.97018754 1.35044333 1.30957217
38 3.34065850 3.25128105 2.80403944 2.66104782 2.99802999 3.42223570 3.36482884
8 9 10 11 12 13 14
2
3
4
5
6
7
8
9 2.51320965
10 3.48979140 1.34380445
11 6.08028020 3.85327211 2.60618871
12 1.68022317 0.97323958 1.81691575 4.41943865
13 0.35720394 2.40310591 3.27264307 5.84081547 1.49872386
14 2.15743637 1.52974639 1.61988139 4.04685239 0.90202462 1.85987046
15 0.59350082 2.03158001 2.91644055 5.49697026 1.12848941 0.37305077 1.56793965
16 2.27180147 0.45516058 1.29021756 3.88982567 0.61384764 2.10937956 1.07723193
17 2.55678358 1.30526177 1.11953066 3.56980875 1.04453322 2.28722153 0.50236053
18 0.56118302 2.06318968 3.16349699 5.76964459 1.35858364 0.71947596 2.03437933
19 1.00955226 3.51964692 4.43523597 6.99611275 2.65373393 1.16282257 2.98004615
20 0.76710605 1.74898763 2.75087250 5.35292825 0.93400317 0.68968260 1.57185616
21 1.65039664 0.86284648 1.98236664 4.58161379 0.40280765 1.55179402 1.30178775
22 1.37564385 1.14258631 2.18657695 4.79264027 0.41739635 1.26570383 1.27433442
23 3.24603613 1.10744876 0.25401826 2.85826233 1.56952318 3.03610691 1.44084490
24 1.82608033 0.75562765 1.71561530 4.32128115 0.22610239 1.67457501 1.04282951
25 0.70337968 1.84068542 2.78798966 5.38279850 0.97687800 0.56949421 1.53317004
26 0.20937793 2.49817800 3.40851919 5.98488169 1.61857054 0.16493431 2.01828552
27 0.47241596 2.43759742 3.26035332 5.81475922 1.51173515 0.12652494 1.80969990
28 0.53196014 2.70774665 3.51144008 6.05174205 1.77858508 0.33195395 2.02522917
29 0.50670555 2.55807065 3.36273025 5.90796206 1.62697299 0.21652611 1.88881718
30 0.59576342 3.05363274 3.93012110 6.48602746 2.16179110 0.66330571 2.47002561
31 0.42170497 2.42487556 3.26770629 5.82817241 1.50766963 0.07295477 1.83259218
32 0.93829561 1.67589636 2.55398710 5.14198464 0.75958154 0.74001384 1.28002718
33 1.79428083 0.75236781 1.77367052 4.37757296 0.26997746 1.65771105 1.12110823
34 1.72534105 0.91821645 1.77702287 4.38120755 0.05511921 1.54906020 0.91872664
35 1.44180047 1.27551384 2.05139242 4.63856268 0.30287034 1.22729443 0.87326982
36 0.91838521 1.60163993 2.60014974 5.20320353 0.78377149 0.81771907 1.45814743
37 1.78232485 1.19701614 2.52565252 5.04647856 1.18677265 1.84209480 2.08736736
38 3.84253154 2.17182352 3.11609723 4.89748650 2.93990374 3.92163845 3.68390783
15 16 17 18 19 20 21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 1.73748458
17 1.96365059 0.90613702
18 0.61474041 1.89188581 2.35091003
19 1.52626866 3.25873019 3.43180959 1.52990422
20 0.36417324 1.50930729 1.89481487 0.46273387 1.77070368
21 1.18469001 0.69243602 1.38689765 1.21788255 2.65701791 0.88665463
22 0.89822411 0.91484604 1.46133260 0.97864882 2.37859938 0.60872700 0.28646717
23 2.67676148 1.03620533 0.95260446 2.91207610 4.19891311 2.50289598 1.72839899
24 1.30159252 0.44673745 1.08539283 1.45078463 2.81695337 1.06264232 0.30415869
25 0.22120089 1.57267217 1.88756867 0.52252258 1.68816858 0.14712675 0.98420296
26 0.49270657 2.22406447 2.43860242 0.68001012 1.03522127 0.75693398 1.63915512
27 0.41344165 2.12527636 2.25172152 0.83834497 1.18135939 0.76094450 1.59655032
28 0.68154857 2.39240146 2.48310779 1.02254803 0.95560653 1.01870945 1.86591347
29 0.53672107 2.24080126 2.34085926 0.93443815 1.09207226 0.88324786 1.71904383
30 1.03405710 2.77154025 2.92095237 1.15581882 0.51092161 1.31171214 2.19496333
31 0.39445155 2.12035727 2.26861450 0.78860908 1.16915591 0.73116864 1.57906436
32 0.36891059 1.36936593 1.63400657 0.76088865 1.89476141 0.30801938 0.84761154
33 1.28490569 0.49126588 1.16785225 1.40065761 2.79124347 1.02786811 0.22526962
34 1.17807981 0.56153426 1.03376075 1.39237359 2.70237473 0.97457488 0.38328919
35 0.86547204 0.90812206 1.15387170 1.19746440 2.38920090 0.74140071 0.59309287
36 0.46481145 1.35661523 1.76034987 0.59058442 1.91924457 0.15271219 0.74099273
37 1.54639360 1.30993582 2.13971723 1.22687398 2.75054689 1.18222378 0.78559702
38 3.61862559 2.61133923 3.47112633 3.28138335 4.76572858 3.25544324 2.60148417
22 23 24 25 26 27 28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 1.93446186
24 0.47214794 1.46302418
25 0.69915832 2.54332642 1.12913067
26 1.35579990 3.16934342 1.78369364 0.65803567
27 1.31022863 3.02771706 1.69820231 0.62845731 0.26673813
28 1.57949382 3.28189186 1.96741959 0.89220726 0.34767131 0.27017305
29 1.43282335 3.13229254 1.81644873 0.75172263 0.29917617 0.12340117 0.15166617
30 1.91145820 3.69574815 2.33434959 1.21301211 0.55580830 0.67166406 0.44887335
31 1.29259887 3.03337489 1.68976953 0.60334036 0.21897305 0.05369246 0.28886811
32 0.56613370 2.31234212 0.93657855 0.25500882 0.86008321 0.76257038 1.03245708
33 0.42508423 1.52025669 0.08303195 1.10357750 1.76090806 1.68736781 1.95733604
34 0.43616022 1.52840117 0.17418162 1.02236726 1.66715517 1.56374536 1.83102702
35 0.43718648 1.81129899 0.52263580 0.74705511 1.35805253 1.22900703 1.49227280
36 0.45942406 2.35168666 0.90997230 0.24879264 0.89824838 0.87624133 1.14092266
37 0.88753092 2.27942601 1.06479175 1.32724325 1.86231027 1.93134110 2.17330146
38 2.83512305 2.97819302 2.72547637 3.39774823 3.93747165 4.01005014 4.25270365
29 30 31 32 33 34 35
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 0.58139985
31 0.15541813 0.66246195
32 0.88230409 1.40254038 0.75319245
33 1.80714382 2.31411705 1.67636525 0.92489168
34 1.67946180 2.21185413 1.55901227 0.80932413 0.22608340
35 1.34071058 1.88963635 1.22943821 0.50363088 0.54738878 0.35798465
36 0.99961827 1.45403963 0.85205729 0.25810862 0.87594586 0.82329830 0.60728998
37 2.05016908 2.37788511 1.89494180 1.33885962 0.98201652 1.16883183 1.31881621
38 4.12942030 4.43672431 3.97429295 3.37120838 2.67001214 2.89486783 3.19068057
36 37
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 1.10786140
38 3.16552142 2.07956278> #Single Linkage
> hiers <- hclust(dist(pengeluaran[,3:4]), method = "single")
> #korelasi cophenetic
> hc1 <- hclust(d1, "single")
> d2 <- cophenetic(hc1)
> cors <- cor(d1,d2)
> cors
[1] 0.8856659> #Average Linkage
> hierave <- hclust(dist(pengeluaran[,3:4]), method = "ave")
> #korelasi cophenetic
> hc2 <- hclust(d1, "ave")
> d3 <- cophenetic(hc2)
> corave <- cor(d1,d3)
> corave
[1] 0.914959> #Complete Linkage
> hiercomp <- hclust(dist(pengeluaran[,3:4]), method = "complete")
> #korelasi cophenetic
> hc3 <- hclust(d1, "complete")
> d4 <- cophenetic(hc3)
> corcomp <- cor(d1,d4)
> corcomp
[1] 0.7191369> #Centorid Linkage
> hiercen <- hclust(dist(pengeluaran), method = "centroid")
> #korelasi cophenetic
> hc4 <- hclust(d1, "centroid")
> d5 <- cophenetic(hc4)
> corcen <- cor(d1,d5)
> corcen
[1] 0.9052242> #Ward's Method
> hierward <- hclust(dist(pengeluaran[,3:4]), method = "ward.D")
> #korelasi cophenetic
> hc5 <- hclust(d1,"ward.D")
> d6 <- cophenetic(hc5)
> corward <- cor(d1,d6)
> corward
[1] 0.6455593> #Pemilihan Metode Terbaik
> KorCop<-data.frame(cors,corave,corcomp,corcen,corward)
> KorCop
cors corave corcomp corcen corward
1 0.8856659 0.914959 0.7191369 0.9052242 0.6455593> #Indeks Validitas
> inval <- clValid(datastand, 3:4, clMethods = "hierarchical", validation = "internal", metric = "euclidean", method = "average")
> summary(inval)
Clustering Methods:
hierarchical
Cluster sizes:
3 4
Validation Measures:
3 4
hierarchical Connectivity 5.8579 11.9476
Dunn 0.4689 0.2481
Silhouette 0.5646 0.4463
Optimal Scores:
Score Method Clusters
Connectivity 5.8579 hierarchical 3
Dunn 0.4689 hierarchical 3
Silhouette 0.5646 hierarchical 3 > optimalScores(inval)
Score Method Clusters
Connectivity 5.8579365 hierarchical 3
Dunn 0.4688731 hierarchical 3
Silhouette 0.5645900 hierarchical 3> #Metode Average Linkage
> hirave <- hclust(dist(scale(pengeluaran[,3:4])), method = "average")
> hirave
Call:
hclust(d = dist(scale(pengeluaran[, 3:4])), method = "average")
Cluster method : average
Distance : euclidean
Number of objects: 38 > plot(hirave, labels(pengeluaran$Provinsi), hang = 1, col = "blue", main = "Cluster Dendogram", sub = " ", xlab = "Provinsi", ylab = "Jarak")>
> anggotaave <- data.frame(id = pengeluaran$Provinsi, cutree(hirave, k = 3))
> anggotaave
id cutree.hirave..k...3.
1 Aceh 1
2 Sumatera Utara 1
3 Sumatera Barat 1
4 Riau 1
5 Jambi 1
6 Sumatera Selatan 1
7 Bengkulu 1
8 Lampung 1
9 Kepulauan Bangka Belitung 1
10 Kepulauan Riau 1
11 DKI Jakarta 2
12 Jawa Barat 1
13 Jawa Tengah 1
14 DI Yogyakarta 1
15 Jawa Timur 1
16 Banten 1
17 Bali 1
18 Nusa Tenggara Barat 1
19 Nusa Tenggara Timur 1
20 Kalimantan Barat 1
21 Kalimantan Tengah 1
22 Kalimantan Selatan 1
23 Kalimantan Timur 1
24 Kalimantan Utara 1
25 Sulawesi Utara 1
26 Sulawesi Tengah 1
27 Sulawesi Selatan 1
28 Sulawesi Tenggara 1
29 Gorontalo 1
30 Sulawesi Barat 1
31 Maluku 1
32 Maluku Utara 1
33 Papua Barat 1
34 Papua Barat Daya 1
35 Papua 1
36 Papua Selatan 1
37 Papua Tengah 1
38 Papua Pegunungan 3> clus_hier <- eclust(datastand, FUNcluster = "hclust", k = 3, hc_method = "average", graph = TRUE)
> fviz_dend(clus_hier, rect = TRUE, cex = 0.5)4 HASIL DAN PEMBAHASAN
4.1 Statistika Deskriptif
> statdes <- summary(pengeluaran)
> statdes
No. Provinsi Pengeluaran untuk Makanan (rupiah)
Min. : 1.00 Length:38 Min. : 541265
1st Qu.:10.25 Class :character 1st Qu.: 694738
Median :19.50 Mode :character Median : 748828
Mean :19.50 Mean : 770195
3rd Qu.:28.75 3rd Qu.: 830964
Max. :38.00 Max. :1157571
Pengeluaran untuk Non Makanan (rupiah)
Min. : 434589
1st Qu.: 610794
Median : 680371
Mean : 745241
3rd Qu.: 822000
Max. :1686258 4.2 Uji Sampel Representatif
> kmo <- KMO(pengeluaran[,3:4])
> kmo
Kaiser-Meyer-Olkin factor adequacy
Call: KMO(r = pengeluaran[, 3:4])
Overall MSA = 0.5
MSA for each item =
Pengeluaran untuk Makanan (rupiah) Pengeluaran untuk Non Makanan (rupiah)
0.5 0.5 Berdasarkan hasil uji KMO pada masing-masing variabel, didapatkan nilai MSA dari kedua variabel lebih besar dari sama dengan 0.5 sehingga dapat disimpulkan bahwa sampel telah cukup untuk bisa dilanjutkan ke analisis cluster hierarki.
4.3 Uji Non-Multikolinieritas
> korelasi <- cor(pengeluaran[,3:4], method = 'pearson')
> korelasi
Pengeluaran untuk Makanan (rupiah)
Pengeluaran untuk Makanan (rupiah) 1.0000000
Pengeluaran untuk Non Makanan (rupiah) 0.6356269
Pengeluaran untuk Non Makanan (rupiah)
Pengeluaran untuk Makanan (rupiah) 0.6356269
Pengeluaran untuk Non Makanan (rupiah) 1.0000000Berdasarkan hasil uji non-multikolinieritas di atas, dapat dilihat bahwa nilai korelasi variabel kurang dari 0.8 sehingga dapat disimpulkan bahwa tidak terjadi multikolinieritas antar variabel.
4.4 Single Linkage
> hiers <- hclust(dist(pengeluaran[,3:4]), method = "single")
> #korelasi cophenetic
> hc1 <- hclust(d1, "single")
> d2 <- cophenetic(hc1)
> cors <- cor(d1,d2)
> cors
[1] 0.8856659Dengan menggunakan metode single linkage, didapatkan nilai korelasi cophenetic sebesar 0.8856659.
4.5 Average Linkage
> hierave <- hclust(dist(pengeluaran[,3:4]), method = "ave")
> #korelasi cophenetic
> hc2 <- hclust(d1, "ave")
> d3 <- cophenetic(hc2)
> corave <- cor(d1,d3)
> corave
[1] 0.914959Dengan menggunakan metode average linkage, didapatkan nilai korelasi cophenetic sebesar 0.914959.
4.6 Complete Linkage
> hiercomp <- hclust(dist(pengeluaran[,3:4]), method = "complete")
> #korelasi cophenetic
> hc3 <- hclust(d1, "complete")
> d4 <- cophenetic(hc3)
> corcomp <- cor(d1,d4)
> corcomp
[1] 0.7191369Dengan menggunakan metode complete linkage, didapatkan nilai korelasi cophenetic sebesar 0.7191369.
4.7 Centroid Linkage
> hiercen <- hclust(dist(pengeluaran), method = "centroid")
> #korelasi cophenetic
> hc4 <- hclust(d1, "centroid")
> d5 <- cophenetic(hc4)
> corcen <- cor(d1,d5)
> corcen
[1] 0.9052242Dengan menggunakan metode centroid linkage, didapatkan nilai korelasi cophenetic sebesar 0.9052242.
4.8 Ward’s Method
> hierward <- hclust(dist(pengeluaran[,3:4]), method = "ward.D")
> #korelasi cophenetic
> hc5 <- hclust(d1,"ward.D")
> d6 <- cophenetic(hc5)
> corward <- cor(d1,d6)
> corward
[1] 0.6455593Dengan menggunakan ward’s method, didapatkan nilai korelasi cophenetic sebesar 0.6455593.
4.9 Pemilihan Metode Terbaik
> KorCop<-data.frame(cors,corave,corcomp,corcen,corward)
> KorCop
cors corave corcomp corcen corward
1 0.8856659 0.914959 0.7191369 0.9052242 0.6455593Berdasarkan nilai korelasi cophenetic dari semua metode yang digunakan sebelumnya, metode average linkage mempunyai nilai korelasi cophenetic terbesar, maka metode ini adalah metode terbaik yang akan digunakan untuk analisis cluster hierarki pada kasus ini.
4.10 Indeks Validitas
> inval <- clValid(datastand, 3:4, clMethods = "hierarchical", validation = "internal", metric = "euclidean", method = "average")
> summary(inval)
Clustering Methods:
hierarchical
Cluster sizes:
3 4
Validation Measures:
3 4
hierarchical Connectivity 5.8579 11.9476
Dunn 0.4689 0.2481
Silhouette 0.5646 0.4463
Optimal Scores:
Score Method Clusters
Connectivity 5.8579 hierarchical 3
Dunn 0.4689 hierarchical 3
Silhouette 0.5646 hierarchical 3 > optimalScores(inval)
Score Method Clusters
Connectivity 5.8579365 hierarchical 3
Dunn 0.4688731 hierarchical 3
Silhouette 0.5645900 hierarchical 3Berdasarkan indeks Connectivity, indeks Dunn, dan indeks Silhouette terpilih jumlah cluster sebanyak tiga sebagai cluster optimal pada metode pengelompokkan average linkage berdasarkan faktor-faktor yang mempengaruhi rata-rata pengeluaran per kapita sebulan untuk makanan dan non makanan.
4.11 Cluster Hierarki dengan Metode Terbaik
> hirave <- hclust(dist(scale(pengeluaran[,3:4])), method = "average")
> hirave
Call:
hclust(d = dist(scale(pengeluaran[, 3:4])), method = "average")
Cluster method : average
Distance : euclidean
Number of objects: 38 > plot(hirave, labels(pengeluaran$Provinsi), hang = 1, col = "blue", main = "Cluster Dendogram", sub = " ", xlab = "Provinsi", ylab = "Jarak")Berdasarkan hasil analisis cluster hierarki menggunakan metode average linkage di atas, didapatkan cluster dendogram yang menggambarkan tingkatan jarak rata-rata pengeluaran per kapita sebulan untuk makanan dan non makanan antar provinsi di Indonesia.
> anggotaave <- data.frame(id = pengeluaran$Provinsi, cutree(hirave, k = 3))
> anggotaave
id cutree.hirave..k...3.
1 Aceh 1
2 Sumatera Utara 1
3 Sumatera Barat 1
4 Riau 1
5 Jambi 1
6 Sumatera Selatan 1
7 Bengkulu 1
8 Lampung 1
9 Kepulauan Bangka Belitung 1
10 Kepulauan Riau 1
11 DKI Jakarta 2
12 Jawa Barat 1
13 Jawa Tengah 1
14 DI Yogyakarta 1
15 Jawa Timur 1
16 Banten 1
17 Bali 1
18 Nusa Tenggara Barat 1
19 Nusa Tenggara Timur 1
20 Kalimantan Barat 1
21 Kalimantan Tengah 1
22 Kalimantan Selatan 1
23 Kalimantan Timur 1
24 Kalimantan Utara 1
25 Sulawesi Utara 1
26 Sulawesi Tengah 1
27 Sulawesi Selatan 1
28 Sulawesi Tenggara 1
29 Gorontalo 1
30 Sulawesi Barat 1
31 Maluku 1
32 Maluku Utara 1
33 Papua Barat 1
34 Papua Barat Daya 1
35 Papua 1
36 Papua Selatan 1
37 Papua Tengah 1
38 Papua Pegunungan 3Cluster 1 beranggotakan Provinsi Aceh, Sumatra Utara, Sumatra Barat, Riau, Jambi, Sumatrra Selatan, Bengkulu, Lampung, Kepulauan Bangka Belitung, Kepulauan Riau, Jawa Barat, Jawa Tengah, DI Yogyakarta, Jawa Timur, Banten, Bali, Nusa Tenggara Barat, Nusa Tenggara Timur, Kalimantan Barat, Kalimantan Tengah, Kalimantan Selatan, Kalimantan Timur, Kalimantan Utara, Sulawesi Utara, Sulawesi Tengah, Sulawesi Selatan, Sulawesi Tenggara, , Gorontalo, Sulawesi Barat, Maluku, Papua Barat, Papua Barat Daya, Papua, Papua Selatan, dan Papua Tengah. Cluster 2 beranggotakan DKI Jakarta. Cluster 3 beranggotakan Papua Pegunungan.
Berikut adalah pembagian menjadi 3 cluster pada cluster dendogram:
> clus_hier <- eclust(datastand, FUNcluster = "hclust", k = 3, hc_method = "average", graph = TRUE)
> fviz_dend(clus_hier, rect = TRUE, cex = 0.5)> idclus = clus_hier$cluster
> idclus
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
27 28 29 30 31 32 33 34 35 36 37 38
1 1 1 1 1 1 1 1 1 1 1 3 > aggregate(pengeluaran,list(idclus),mean)
Group.1 No. Provinsi Pengeluaran untuk Makanan (rupiah)
1 1 19.22222 NA 750045.1
2 2 11.00000 NA 1108227.7
3 3 38.00000 NA 1157570.8
Pengeluaran untuk Non Makanan (rupiah)
1 723944.7
2 1686257.5
3 570904.3Cluster 1 variabel pengeluaran untuk makanan memiliki karakteristik rendah dibanding dengan cluster 2 dan 3, sedangkan variabel pengeluaran untuk non makanan memiliki karakteristik yang lebih tinggi dari cluster 3 namun lebih rendah dari cluster 2.
5 KESIMPULAN
Berdasarkan hasil analisis cluster hierarki pada data rata-rata pengeluaran per kapita sebulan untuk makanan dan non makanan pada tahun 2024 di Indonesia, didapatkan kesimpulan sebagai berikut:
Analisis cluster hierarki pada data data rata-rata pengeluaran per kapita sebulan untuk makanan dan non makanan pada tahun 2024 di Indonesia menghasilkan tiga cluster.
Cluster 1 adalah provinsi yang memiliki rata-rata pengeluaran per kapita sebulan untuk makanan dan non makanan yang rendah.
Cluster 2 adalah provinsi yang memiliki rata-rata pengeluaran per kapita sebulan untuk makanan dan non makanan yang tinggi.
Cluster 3 adalah provinsi yang memiliki rata-rata pengeluaran per kapita sebulan untuk makanan yang tinggi, namun untuk non makanan rendah.
6 DAFTAR PUSTAKA
Johnson, R. A. and DW. Wichern, 2022. Applied Multivariate Statistical Analysis. Six edition. Prentice-Hall, Inc., New Jersey.
Anderson, T. W., 1984. An Introduction to Multivariate Statistical Analysis, John Wiley and sons, New York, 675.
Nafisah, Q. and Chandra, N. E. (2017). “Analisis Cluster Average Linkage Berdasarkan Faktor-Faktor Kemiskinan di Provinsi Jawa Timur”. Zeta-Math Journal, 3(2), 31-36.