Pertama import library yang digunakan untuk analisis ini.
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.4.2
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(factoextra)
## Warning: package 'factoextra' was built under R version 4.4.2
## Welcome! Want to learn more? See two factoextra-related books at https://goo.gl/ve3WBa
Kemudian import data dan menyiapkan data untuk PCA yang mengecualikan data non numerical
data <- read.csv("D:/Dataset/decathlon-3.csv")
pca_data <- data %>%
select(-c(Athlets, Rank, Points, Competition))
Melakukan analisis PCA
pca_result <- prcomp(pca_data, scale. = TRUE)
Melihat komponen data yang dihasilkan
summary(pca_result)
## Importance of components:
## PC1 PC2 PC3 PC4 PC5 PC6 PC7
## Standard deviation 1.8088 1.3180 1.1853 1.0280 0.82751 0.77412 0.67174
## Proportion of Variance 0.3272 0.1737 0.1405 0.1057 0.06848 0.05993 0.04512
## Cumulative Proportion 0.3272 0.5009 0.6414 0.7471 0.81556 0.87548 0.92061
## PC8 PC9 PC10
## Standard deviation 0.62998 0.46348 0.42688
## Proportion of Variance 0.03969 0.02148 0.01822
## Cumulative Proportion 0.96030 0.98178 1.00000
visualisasi dari variasi
fviz_eig(pca_result)
Berdasarkan tabel hasil Analisis Komponen Utama (PCA) di atas, kita dapat menyimpulkan beberapa poin penting sebagai berikut:
Membuat scatter plot antara komponen pertama dan kedua
pca_scores <- as.data.frame(pca_result$x)
pca_scores$Athlets <- data$Athlets
ggplot(pca_scores, aes(x = PC1, y = PC2, label = Athlets)) +
geom_point(color = "blue", size = 3) +
geom_text(vjust = 1.5, size = 3) +
labs(title = "PCA Scatter Plot (PC1 vs PC2)", x = "PC1", y = "PC2") +
theme_minimal()
Dari plot PCA yang menggambarkan hubungan antara PC1 dan PC2, kita dapat mengidentifikasi beberapa pola atau klaster yang menarik.
Distribusi Data Titik-titik data tersebar merata di seluruh dimensi PC1 dan PC2, menunjukkan adanya variasi yang signifikan. Beberapa titik terlihat menyimpang dari kelompok utama, atau yang biasa disebut outliers, seperti Casarsa yang berada di bagian atas, Karpov di sudut kanan bawah, dan Drews di kiri bawah.
Kelompok Terpusat Sebagian besar titik terletak dekat dengan pusat koordinat, di mana nilai PC1 dan PC2 mendekati nol. Hal ini mengindikasikan bahwa kelompok ini memiliki kesamaan karakteristik yang terlihat pada kedua dimensi utama. Nama-nama seperti Bernard, Hernu, dan Warners berada di pusat distribusi tersebut.
Potensi Klaster
hubungan antara hasil PCA yang diperoleh dengan variabel/ cabang lomba serta sampel/ atlet yang diperoleh
fviz_pca_var(pca_result, col.var = "cos2", gradient.cols = c("#00AFBB", "#E7B800", "#FC4E07"),
repel = TRUE)
Plot lingkaran korelasi dari Analisis Komponen Utama (PCA) ini memberikan wawasan yang berharga mengenai hubungan antar variabel, khususnya cabang lomba, serta kontribusi masing-masing terhadap dua dimensi utama, yaitu Dim1 dan Dim2.
Variabel yang searah, atau vektor yang berdekatan, menandakan adanya korelasi positif yang kuat. Contohnya, cabang lomba shot put dan discus menunjukkan hubungan yang cukup erat, kemungkinan disebabkan oleh kebutuhan kedua cabang ini akan kekuatan fisik. Selain itu, cabang X100m, X110m hurdle, dan X400m juga tampak saling mendekat, mengindikasikan bahwa ketiga cabang ini mungkin memiliki kesamaan dalam atribut kecepatan atau daya tahan.
Di sisi lain, variabel yang berada tegak lurus satu sama lain, yakni membentuk sudut 90°, menandakan bahwa tidak ada korelasi antara keduanya. Sebagai contoh, pole vault (lompat galah) hampir berada pada sudut tegak lurus dengan shot put, menunjukkan bahwa kedua cabang ini tidak memiliki hubungan langsung dalam hal atribut atlet.
Selain itu, variabel yang berlawanan arah menunjukkan adanya korelasi negatif.
fviz_pca_biplot(pca_result,
repel = TRUE, # Avoid overlapping text
col.var = "red", # Color for variables
col.ind = "blue", # Color for individuals
title = "PCA Biplot: Athletes and Variables")
PC1 (32. 72%): Mencerminkan atribut yang berkaitan dengan kecepatan dan daya tahan, diwakili oleh cabang-cabang seperti 100m, 400m, dan 110m hurdle.
PC2 (17. 37%): Menilai atribut kekuatan dan teknik, dengan cabang-cabang seperti Shot put, Discus, dan Pole vault.
Vektor yang panjang, misalnya Shot put dan 400m, menunjukkan kontribusi signifikan terhadap dimensi spesifik.
Variabel yang berdekatan dalam arah vektor menandakan korelasi positif, seperti halnya hubungan antara Shot put dengan Discus, serta antara 100m dengan 110m hurdle.
Karpov, Sebrie, dan Clay memiliki skor tinggi pada PC1, menunjukan keunggulan dalam aspek kecepatan dan daya tahan.
Di sisi lain, atlet seperti Casarsa dan Drews berada dalam posisi yang berbeda, menunjukkan kemungkinan perlakuan yang berbeda dibandingkan dengan kelompok utama.
Atlet yang lebih dekat dengan variabel tertentu cenderung memiliki performa yang baik dalam cabang olahraga tersebut.
berikut komponen utama yang paling berkaitan dengan performa atlet di cabang tertentu
var_contributions <- as.data.frame(pca_result$rotation)
var_contributions
## PC1 PC2 PC3 PC4 PC5
## X100m -0.42829627 0.1419891 -0.15557953 0.03678703 0.36518741
## Long.jump 0.41015201 -0.2620794 0.15372674 -0.09901016 0.04432336
## Shot.put 0.34414444 0.4539470 -0.01972378 -0.18539458 0.13431954
## High.jump 0.31619436 0.2657761 -0.21894349 0.13189684 0.67121760
## X400m -0.37571570 0.4320460 0.11091758 -0.02850297 -0.10597034
## X110m.hurdle -0.41255442 0.1735910 -0.07815576 -0.28290068 0.19857266
## Discus 0.30542571 0.4600244 0.03623770 0.25259074 -0.12667770
## Pole.vault 0.02783081 -0.1368411 0.58361717 -0.53649480 0.39873734
## Javeline 0.15319802 0.2405071 -0.32874217 -0.69285498 -0.36873120
## X1500m -0.03210733 0.3598049 0.65987362 0.15669648 -0.18557094
## PC6 PC7 PC8 PC9 PC10
## X100m -0.29607739 -0.38177608 0.46160211 -0.10475771 0.42428269
## Long.jump 0.30612478 -0.62769317 -0.02101165 -0.48266910 0.08104448
## Shot.put -0.30547299 0.30972542 -0.31393005 -0.42729075 0.39028424
## High.jump 0.46777116 0.09145002 0.12509166 0.24366054 -0.10642724
## X400m 0.33252178 0.12442114 0.21339819 -0.55212939 -0.41399532
## X110m.hurdle 0.09963776 -0.35733030 -0.71111429 0.15013429 -0.09086448
## Discus -0.44937288 -0.42988982 0.03838986 0.15480715 -0.44916580
## Pole.vault -0.26166458 0.09796019 0.17803824 0.08297769 -0.27645138
## Javeline 0.16320268 -0.10674519 0.29614206 0.24732691 0.08777340
## X1500m 0.29826888 -0.08362898 0.01371744 0.30773397 0.42923132
Berdasarkan tabel yang menunjukkan kontribusi setiap variabel pada komponen utama (PC), kita dapat mengidentifikasi komponen utama yang paling berkaitan dengan performa di cabang tertentu dengan memperhatikan nilai absolut terbesar dalam setiap kolom PC.
urutan atlet yang memiliki performa terbaik
ranking <- pca_scores %>%
select(Athlets, PC1) %>%
arrange(desc(PC1))
ranking
## Athlets PC1
## 1 Karpov 4.56329817
## 2 Sebrle 3.98889511
## 3 Clay 3.87127297
## 4 Macey 2.20605510
## 5 Warners 2.14178935
## 6 Bernard 1.88294288
## 7 KARPOV 1.34154909
## 8 CLAY 1.21983673
## 9 Zsivoczky 0.91378044
## 10 Hernu 0.87812900
## 11 Smith 0.85963151
## 12 SEBRLE 0.78191413
## 13 McMULLEN 0.58030713
## 14 Pogorelov 0.53305497
## 15 Ojaniemi 0.37544985
## 16 WARNERS 0.35251035
## 17 Averyanov 0.34487086
## 18 Nool 0.29168215
## 19 ZSIVOCZKY 0.26843999
## 20 Schoenbeck 0.11302687
## 21 Schwarzl 0.08008379
## 22 Barras 0.00211888
## 23 Drews -0.24563257
## 24 Gomez -0.28633215
## 25 Qi -0.42913561
## 26 Smirnov -0.47856903
## 27 YURKOV -0.57877827
## 28 BERNARD -0.60203609
## 29 Terek -0.67358522
## 30 Korkizoglou -0.94607686
## 31 Parkhomenko -1.05630678
## 32 BARRAS -1.32519011
## 33 Turi -1.52289439
## 34 HERNU -1.52710548
## 35 Karlivans -1.96989702
## 36 MARTINEAU -1.97087543
## 37 NOOL -2.31620003
## 38 Lorenzo -2.37895659
## 39 Uldal -2.53081963
## 40 Casarsa -2.82203064
## 41 BOURGUIGNON -3.93021742
Tabel di atas menampilkan peringkat semua atlet dalam dataset, di mana atlet dengan performa terbaik dapat diidentifikasi melalui nilai PC1 yang lebih tinggi. Dalam hal ini, Karpov muncul sebagai yang teratas dengan skor 4. 56, yang kemungkinan mencerminkan atribut utama seperti kecepatan atau kekuatan.