1 Pendahuluan

1.1 Latar Belakang

Dalam beberapa dekade terakhir, insiden serangan jantung telah meningkat secara signifikan di seluruh dunia sehingga menjadi perhatian serius dalam bidang kesehatan masyarakat. Penyakit ini dapat menyerang siapa saja di segala umur. Serangan jantung dapat menyebabkan kematian mendadak tanpa diketahui kemungkinan penyakit yang diderita sebelumnya. Serangan jantung merupakan salah satu kondisi kritis yang dapat mengancam kehidupan individu. Serangan jantung terjadi ketika plak arteri tiba-tiba pecah dan menyebabkan gumpalan darah yang menghambat aliran darah ke otot jantung. Kondisi ini merupakan situasi yang sangat berbahaya dan dapat menyebabkan nyeri dada yang intens, kegagalan jantung, dan bahkan kematian yang mendadak (Khoirunisa,2014).

Dalam masyarakat seringkali kita temui masih banyak orang yang tidak memiliki kesadaran terhadap gejala serangan jantung. Akibatnya, mereka tidak menyadari jika mengalami serangan jantung yang mengakibatkan keterlambatan dalam penanganan medis. Dalam beberapa kasus, hal ini dapat berujung pada kematian sebelum mereka tiba di rumah sakit. Pengetahuan mengenai gejala dan resiko penyakit jantung perlu dimiliki oleh setiap individu. Hal ini dikarenakan pemahaman yang lebih baik tentang faktor-faktor yang berkontribusi terhadap resiko serangan jantung sangat penting dalam upaya pencegahan dan penanganan serangan jantung. Pada umumnya, penyebab serangan jantung kompleks dan melibatkan berbagai faktor risiko. Faktor-faktor risiko ini dapat berhubungan dengan gaya hidup, seperti merokok, makanan, aktivitas fisik, dan stres, serta faktor-faktor medis seperti tekanan darah tinggi, kolesterol tinggi, diabetes, riwayat penyakit jantung dalam keluarga, dan lain-lain.

Berdasarkan fakta diatas Untuk mengidentifikasi faktor-faktor yang berpengaruh terhadap resiko serangan jantung, analisis faktor dapat menjadi metode analisis yang sangat berguna. Analisis faktor adalah metode statistik yang digunakan untuk mengidentifikasi pola hubungan antara berbagai variabel dan mengelompokkan variabel-variabel tersebut ke dalam faktor-faktor yang lebih besar. Oleh karena itu, penelitian ini bertujuan untuk menerapkan analisis faktor guna mengeksplorasi dan mengidentifikasi faktor-faktor yang berpengaruh terhadap resiko serangan jantung.

Hasil dari penelitian ini diharapkan dapat memberikan pemahaman yang lebih dalam tentang faktor-faktor yang berpengaruh terhadap resiko serangan jantung sehingga memungkinkan untuk membantu dalam mengembangkan strategi pencegahan dan intervensi yang lebih efektif dalam mengurangi insiden serangan jantung di masyarakat.

1.2 Rumusan Masalah

Berdasarkan uraian latar belakang dapat dirumuskan masalah sebagai berikut:

  1. Apa saja faktor-faktor yang mempengaruhi resiko serangan jantung?

  2. Apa faktor yang paling dominan dalam mempengaruhi resiko serangan jantung?

1.3 Tujuan

Penelitian ini bertujuan untuk mengidentifikasi faktor-faktor yang berpengaruh terhadap resiko serangan jantung dan mengidentifikasi faktor paling dominan yang berpengaruh terhadap resiko serangan jantung.

2 Tinjauan Pustaka

2.1 Analisis Faktor

2.1.1 Pengertian

Analisis faktor adalah salah satu metode analisis multivariat yang digunakan untuk mengevaluasi dan mengidentifikasi faktor-faktor yang paling signifikan di antara berbagai indikator yang ada. Tujuan dari analisis ini adalah untuk mengidentifikasi, mengelompokkan, dan menyederhanakan faktor-faktor yang mewakili dimensi dari suatu variabel.

2.1.2 Asumsi

Dalam analisis faktor diperlukan beberapa asumsi yang harus dilakukan agar analisis faktor dapat dilakukan. Berikut merupakan asumsi dari analisis faktor:

  1. Nilai perbandingan korelasi terobservasi dengan korelasi parsial lebih dari 0.6

  2. Nilai mean dari suatu faktor spesifik ataupun faktor bersama 0

  3. Varians dari faktor bersama bernilai 1

  4. Antar faktor bersama bebas dari korelasi

2.1.3 Jenis-Jenis

Analisis faktor terdiri dari dua jenis yaitu analisis faktor eksploratori dan analisis faktor konfirmatori. Analisis faktor eksploratori digunakan untuk menyelidiki hubungan antara variabel manifestasi dan faktor tanpa membuat asumsi yang sangat ketat tentang variabel manifestasi yang berhubungan dengan faktor mana. Sedangkan analisis faktor konfirmatori, digunakan untuk menguji apakah model faktor tertentu yang diajukan sebelumnya secara praduga memberikan kesesuaian yang memadai dengan kovarians atau korelasi antara variabel manifestasi.

2.1.4 Perbedaan PCA dan Analisis Faktor

PCA dan analisis faktor sering disebut sebagai analisis yang serupa, meskipun terdapat perbedaan mendasar di antara keduanya. Adapun beberapa perbedaan dari PCA dan analisis faktor:

  1. Dalam PCA, hasil kombinasi adalah gabungan linear dari variabel asli. Sedangkan dalam analisis faktor, hasil kombinasi adalah kombinasi linear dari faktor-faktor yang mendasarinya.

  2. Dalam PCA, tujuannya untuk mengidentifikasi total variasi variabel. Sedangkan tujuan dalam analisis faktor, perhatiannya lebih tertuju pada kovarians atau korelasi antara variabelnya.

2.2 Matriks Kolerasi

Pada analisis faktor, matriks korelasi adalah matriks yang menunjukkan korelasi antar variabel. Korelasi adalah ukuran tingkat keterkaitan antar variabel. Korelasi dapat berkisar antara -1 hingga 1. Nilai 1 menunjukkan korelasi sempurna positif, nilai -1 menunjukkan korelasi sempurna negatif, dan nilai 0 menunjukkan tidak ada korelasi.

Matriks korelasi penting dalam analisis faktor karena digunakan untuk menentukan faktor-faktor yang mendasari variabel-variabel tersebut. Faktor-faktor adalah variabel-variabel yang memiliki korelasi yang tinggi antar satu sama lain. Analisis faktor mengharuskan adanya hubungan linier antara variabel yang diamati dan koefisien korelasi tidak boleh nol. Hal ini yang menunjukkan bahwa hubungan itu nyata

Berikut contoh bentuk matriks korelasi:

Alt Text

2.3 Uji Hipotesis

  1. Bartlett’s test of sphericity

    Uji Bartlett adalah salah satu metode untuk menguji apakah suatu matriks korelasi antar variabel terobservasi dapat dianggap sebagai matriks identitas, yang berarti tidak ada hubungan antara variabel-variabel tersebut. Uji ini sering digunakan sebagai salah satu syarat untuk melakukan analisis faktor, yaitu suatu teknik statistik untuk mengidentifikasi variabel laten yang mendasari pola korelasi dalam suatu kumpulan variabel terobservasi. Uji Bartlett didasarkan pada statistik chi-kuadrat yang mengukur perbedaan antara matriks korelasi yang diperoleh dari data dan matriks identitas.

    Hipotesis dalam uji ini adalah sebagai berikut:

    \(H_0:\) Matriks korelasi adalah matriks identitas (Tidak terdapat korelasi yang signifikan setidaknya antar beberapa variabel)

    \(H_1:\) Matriks korelasi bukan matriks identitas (Terdapat korelasi yang signifikan setidaknya antar beberapa variabel)

    Adapun statistik uji Barlett’s test sebagai berikut:

    Alt Text

    Keterangan:

    N = jumlah observasi
    p = jumlah variabel
    |R| = determianan matriks korelasi

    Dengan kriteria pengambilan keputusannya adalah jika nilai p dari uji ini kurang dari tingkat signifikansi yang ditentukan, maka hipotesis nol ditolak dan disimpulkan bahwa ada hubungan antara variabel-variabel yang diteliti, sehingga analisis faktor dapat dilakukan. Sebaliknya, jika nilai p dari uji ini lebih besar dari tingkat signifikansi yang ditentukan, maka hipotesis nol tidak dapat ditolak dan disimpulkan bahwa tidak ada hubungan antara variabel-variabel yang diteliti, sehingga analisis faktor tidak dapat dilakukan.

  2. Kiser-Mayer-Olkin (KMO)

    Uji KMO (Kaiser-Meyer-Olkin) adalah salah satu metode untuk menguji kelayakan sampel untuk melakukan analisis faktor, yaitu suatu teknik statistik untuk mengidentifikasi variabel laten yang mendasari pola korelasi dalam suatu kumpulan variabel terobservasi. Uji KMO mengukur seberapa baik variabel-variabel yang diteliti berkorelasi satu sama lain, sehingga dapat dikelompokkan menjadi faktor-faktor yang lebih sedikit. Uji KMO menghasilkan nilai antara 0 dan 1, yang menunjukkan seberapa banyak variasi dalam data yang dapat dijelaskan oleh faktor-faktor yang ada. Nilai yang lebih tinggi menunjukkan bahwa data lebih cocok untuk analisis faktor, sedangkan nilai yang lebih rendah menunjukkan bahwa data kurang cocok untuk analisis faktor.

    Adapun Statistik Uji KMO sebagai berikut:

    Alt Text

    Keterangan:

    \(r_k\) = koefisien korelasi antara variabel ke-j dan ke-k
    \(P_jk\) = koefisien korelasi parsial antara variabel ke-j dan ke-k

    Dimana kriteria pengambilan keputusan yaitu memiliki nilai statistik KMO minimal sebesar 0.5.

  3. Measure of Sampling Adequacy (MSA)

    Measure of Sampling Adequacy (MSA) adalah sebuah metrik yang digunakan dalam analisis faktor untuk menilai sejauh mana data sampel yang digunakan cocok atau memadai untuk analisis faktor. MSA digunakan untuk memeriksa apakah data yang digunakan dalam analisis faktor memiliki karakteristik yang cukup baik untuk menghasilkan hasil yang andal. Ini adalah salah satu tahap awal dalam analisis faktor, yang digunakan untuk menilai kualitas data sebelum melanjutkan dengan analisis faktor itu sendiri.

    Adapun statistik uji MSA sebagai berikut:

    Alt Text

    Dimana kriteria pengambilan keputusan yaitu jika nilai MSA Indikator < 0.5, maka Indikator tersebut akan tereliminasi dan tidak dapat diikutsertakan dalam analisis komponen utama.

2.4 Metode Ekstrasi Faktor

Dalam analisis faktor, ekstraksi faktor merupakan langkah awal yang penting. Langkah ini bertujuan untuk mengurangi jumlah variabel asli menjadi sejumlah kecil faktor yang lebih mudah untuk diinterpretasikan. Jumlah faktor yang terbentuk (k faktor) harus lebih sedikit dari jumlah variabel asli (p variabel), yaitu p ≤ k (Sigit,2008).

Salah satu metode umum untuk mengekstrak faktor adalah Principal Component Analysis (PCA) dan Principal Factor Analysis (PFA). PCA mengasumsikan bahwa setiap variabel dapat dijelaskan melalui kombinasi linear faktor bersama yang berarti faktor-faktor tersebut mencakup variasi keseluruhan variabel. Jika semua faktor berkontribusi terhadap variasi suatu variabel, maka komunalitasnya mencapai 100% (atau 1). Namun dalam praktiknya, hal ini jarang terjadi karena variabel jarang dapat direduksi menjadi beberapa faktor yang mewakili variasi semua variabel. Dalam PCA, jika komunalitas kurang dari 1 maka menandakan bahwa ada kehilangan informasi dalam representasi tersebut.

Sedangkan, PFA mengasumsikan bahwa variasi variabel dapat dibagi menjadi dua bagian. Bagian pertama mencakup variasi gabungan dari semua variabel dalam analisis. Bagian lainnya mencakup variasi yang unik untuk masing-masing variabel. Variabilitas total antar variabel yang diamati tidak dapat dijelaskan oleh faktor bersama. Dalam PFA, faktor bersama hanya menjelaskan komponen variasi pertama yaitu bagian yang umumnya muncul dari semua variabel sehingga komunalitas indikator harus kurang dari 1 (Cleff, 2019).

2.5 Metode Penentuan Jumlah Faktor

Penentuan banyak faktor adalah salah satu langkah penting dalam analisis faktor. Banyak faktor yang dipilih haruslah sesuai dengan data yang digunakan. Jika banyak faktor yang dipilih terlalu sedikit, maka faktor-faktor tersebut tidak akan dapat mewakili semua informasi yang ada pada data. Sebaliknya, jika banyak faktor yang dipilih terlalu banyak, maka faktor-faktor tersebut akan menjadi terlalu umum dan tidak dapat memberikan informasi yang berarti.

Ada beberapa metode yang dapat digunakan untuk menentukan banyak faktor, yaitu:

  1. Penentuan Berdasarkan Eigenvalues

    Metode ini didasarkan pada nilai eigenvalues dari matriks korelasi. Eigenvalues adalah kuadrat akar dari akar-akar polynomial karakteristik matriks korelasi. Eigenvalues yang lebih besar menunjukkan bahwa variabel-variabel yang terkait dengan eigenvalue tersebut memiliki korelasi yang lebih tinggi.

    Secara umum, faktor-faktor yang dipilih adalah faktor-faktor yang memiliki eigenvalues lebih besar dari 1. Hal ini disebabkan karena eigenvalues yang lebih besar menunjukkan bahwa faktor-faktor tersebut dapat menjelaskan lebih banyak varians dari data.

  2. Penentuan Berdasarkan Scree Plot

    Metode ini didasarkan pada scree plot, yaitu plot dari eigenvalues terhadap jumlah faktor. Scree plot biasanya berbentuk seperti huruf S. Lereng dari huruf S tersebut menunjukkan bahwa ada titik di mana eigenvalues mulai menurun dengan cepat. Titik ini menunjukkan jumlah faktor yang optimal.

  3. Penentuan Apriori

    Metode ini didasarkan pada pengetahuan apriori tentang data. Jika peneliti memiliki pengetahuan tentang jumlah faktor yang diharapkan, maka peneliti dapat menggunakan pengetahuan tersebut untuk menentukan banyak faktor.

  4. Penentuan Berdasarkan pada Persentase Varian

    Metode ini didasarkan pada persentase varians yang dijelaskan oleh faktor-faktor. Persentase varians yang dijelaskan oleh faktor-faktor dapat dihitung dengan menggunakan rumus berikut:

    \[Presentase Varians = (\frac{Eigenvalue}{Total Varians} x 100 )\]

    Faktor-faktor yang dipilih adalah faktor-faktor yang dapat menjelaskan paling sedikit 50% dari varians. Hal ini disebabkan karena faktor-faktor tersebut dapat mewakili sebagian besar informasi yang ada pada data.

2.6 Rotasi Faktor

Rotasi faktor dilakukan untuk mempermudah interpretasi dalam hasil yang disebabkan oleh hasil analisis faktor yang tidak unik.Hal ini berarti, hasil analisis faktor yang tidak dirotasi dapat menghasilkan faktor-faktor yang tidak unik yaitu faktor-faktor yang memiliki variabel-variabel yang sama. Rotasi faktor dapat membantu untuk mengatasi hal ini dengan mengatur faktor-faktor sehingga variabel-variabel yang memiliki korelasi yang tinggi berada pada faktor yang sama.

Rotasi juga diperlukan untuk menentukan faktor-faktor terkuat yang tepat pada masing-masing variabel tanpa memberikan hasil yang kontradiktif. Rotasi faktor dapat membantu untuk menentukan faktor-faktor yang paling kuat yang sesuai dengan masing-masing variabel. Rotasi faktor dapat dilakukan dengan berbagai metode, salah satunya adalah rotasi Varimax.

Rotasi Varimax adalah metode rotasi faktor yang populer karena dapat menghasilkan faktor-faktor yang mudah untuk ditafsirkan. Rotasi Varimax dilakukan dengan menyekalakan loadings (korelasi antara variabel dengan faktor) dengan nilai komunalitasnya. Nilai komunalitas adalah proporsi varians dari suatu variabel yang dapat dijelaskan oleh semua faktor. Berikut adalah nilai komunalitas:

Alt Text

Kemudian memaksimumkan nilai:

Alt Text

Penyekalaan loadings dengan nilai komunalitas akan menghasilkan loadings yang memiliki varians 1. Hal ini akan membuat faktor-faktor menjadi lebih mudah untuk ditafsirkan karena nilai loadings akan menunjukkan seberapa besar pengaruh suatu variabel terhadap faktor tersebut.

3 Data

Data yang digunakan dalam penelitian dengan judul “Penerapan Analisis Faktor Eksploratori dalam menentukan Faktor-Faktor yang mempengaruhi Resiko Serangan Jantung” adalah data faktor-faktor yang memungkinkan berpengaruh terhadap resiko serangan jantung yang diambil dari sumber Kaggle dengan judul “Heart Attack Risk Prediction Dataset” terhadap 250 pasien. Berikut merupakan variabel-variabel yang digunakan:

\(X_1\) : Gender (1: Laki-Laki, 0: Perempuan)
\(X_2\) : Diabetes (Apakah pasien menderita diabetes, 1: Ya, 0: Tidak)
\(X_3\) : Family History (Riwayat keluarga dengan masalah jantung, 1: Yes, 0: No)
\(X_4\) : Smoking (1: Merokok, 0: Tidak Merokok)
\(X_5\) : Obesity (1: Obesitas, 0: Tidak obesitas)
\(X_6\) : Alcohol Consumption (1: Mengonsumsi, 0 : Tidak Mengonsumsi)
\(X_7\) : Previous Heart Problems (Riwayat sakit jantung sebelumnya, 1: Ya, 0: Tidak)

Berikut merupakan data yang digunakan dalam penelitian ini:

> Faktor_Serangan_Jantung <- readxl::read_excel("D:/kuliah nasywa/sem 5/anmul/praktikum/Faktor Serangan Jantung.xlsx")
> knitr::kable(Faktor_Serangan_Jantung, 
+              caption = "Data Faktor Resiko Serangan Jantung",align="c")
Data Faktor Resiko Serangan Jantung
Gender Diabetes Family History Smoking Obesity Alcohol Consumption Previous Heart Problems
1 1 1 1 1 0 1
1 0 0 1 1 1 0
0 0 1 1 1 1 0
1 1 1 1 1 1 0
1 1 1 1 0 1 1
1 1 1 1 0 1 0
1 1 0 1 1 0 0
1 0 1 1 0 1 1
0 0 0 1 0 1 0
1 1 0 1 1 0 1
1 1 0 1 1 1 0
1 1 0 1 1 1 1
1 1 0 1 1 0 1
0 0 0 1 1 1 1
1 1 1 1 0 1 0
0 1 0 0 0 1 1
0 1 1 1 0 0 1
0 1 1 1 1 1 0
1 1 1 1 1 0 1
1 1 0 1 0 1 0
0 1 1 1 0 0 1
0 0 1 0 0 0 0
1 0 0 1 0 1 1
1 1 1 1 1 0 1
1 1 0 1 1 1 1
0 1 0 1 0 0 0
1 1 1 1 0 1 1
0 1 0 1 0 1 1
1 1 0 1 1 1 1
1 1 0 1 0 0 1
0 0 0 1 1 1 0
1 1 0 1 0 1 0
1 1 0 1 1 0 1
0 0 1 0 0 1 0
1 1 1 1 0 1 0
1 1 1 1 1 0 0
0 1 0 0 0 0 1
0 1 0 0 0 1 1
1 0 0 1 0 1 1
1 0 1 1 1 1 1
0 0 0 1 0 1 0
0 1 0 1 0 0 1
1 1 0 1 1 0 1
1 1 0 1 1 0 1
1 1 0 1 0 0 1
0 1 0 0 1 0 1
1 1 1 1 1 0 0
1 1 1 1 1 0 1
1 1 0 1 1 0 0
1 1 0 1 1 0 0
0 1 0 1 1 0 0
1 1 0 1 1 0 0
1 1 0 1 0 1 1
1 0 1 1 1 0 0
0 1 1 0 1 1 0
0 1 1 0 0 1 0
1 1 1 1 0 0 1
1 1 1 1 0 0 0
1 1 0 1 1 0 0
0 1 0 0 0 0 1
1 1 0 1 0 0 1
1 1 0 1 1 0 1
1 1 1 1 0 1 0
1 0 0 1 0 0 0
1 0 1 1 0 1 0
1 1 0 1 1 0 1
1 1 0 1 0 1 0
1 0 1 1 1 1 0
1 0 0 1 0 1 1
1 1 0 1 0 1 1
1 1 1 1 0 1 0
0 1 0 1 1 1 1
1 0 1 1 1 0 0
1 0 0 1 0 1 0
0 1 1 1 1 1 0
1 0 1 1 1 1 0
1 1 1 1 0 1 1
1 0 0 1 0 1 0
1 0 1 1 1 0 1
0 1 0 0 0 1 1
0 1 1 0 0 1 1
1 1 1 1 0 0 0
1 1 1 1 1 0 1
0 1 0 1 0 1 1
1 1 0 1 1 1 0
1 1 1 1 0 1 1
0 0 0 0 0 1 0
1 1 1 1 1 1 0
0 1 1 1 1 0 1
1 1 1 1 0 0 0
0 0 0 1 0 1 1
1 1 0 1 1 0 1
1 1 0 1 0 1 1
0 0 1 1 0 1 0
1 0 1 1 1 0 1
1 0 1 1 0 1 0
0 0 1 0 0 0 1
1 1 1 1 1 1 0
1 1 1 1 1 0 1
0 1 1 1 1 1 0
1 0 1 1 1 0 0
1 1 0 1 1 0 0
1 1 0 1 0 0 1
1 0 0 1 0 0 0
1 0 1 1 0 1 0
1 1 1 1 1 1 1
1 1 1 1 0 1 1
0 1 0 1 1 1 0
0 1 0 1 0 0 1
1 1 0 1 0 1 1
1 1 1 1 0 1 0
1 1 1 1 1 1 1
0 1 0 1 0 0 0
1 1 1 1 1 1 0
1 1 0 1 1 0 1
1 1 0 1 1 0 1
0 1 1 0 0 0 0
0 0 1 1 1 0 1
1 1 1 1 0 1 1
0 0 0 0 1 1 0
1 1 1 1 1 1 0
1 0 1 1 1 1 0
1 1 0 1 0 0 1
0 1 0 0 0 0 0
1 1 1 1 0 1 1
1 1 1 1 1 1 0
1 1 0 1 0 0 0
1 1 0 1 1 0 0
0 1 0 1 0 1 1
1 0 1 1 1 1 1
1 1 0 1 1 1 1
1 0 0 1 0 1 0
0 1 0 0 0 0 1
1 0 1 1 1 0 1
1 1 0 1 1 0 0
1 1 1 1 0 1 0
1 1 0 1 0 1 0
1 1 1 1 0 0 0
0 1 0 0 0 1 1
0 1 0 1 0 1 0
0 1 0 1 0 1 1
1 0 1 1 1 1 1
1 0 1 1 1 1 0
1 0 0 1 1 0 1
1 1 1 1 1 1 0
0 1 1 0 1 0 0
0 1 1 1 1 0 0
1 0 1 1 0 1 1
1 1 0 1 1 1 0
1 1 1 1 0 1 1
0 0 0 0 1 1 0
1 1 0 1 1 1 0
1 1 1 1 1 1 0
1 0 1 1 0 1 0
1 1 1 1 0 1 1
1 1 1 1 0 1 0
1 0 1 1 0 0 0
1 0 1 1 1 0 0
1 1 1 1 0 1 1
1 1 1 1 0 1 0
1 0 0 1 0 0 1
1 1 0 1 1 1 0
1 1 1 1 1 1 0
0 1 1 1 0 1 1
1 1 0 1 1 1 0
1 0 1 1 1 0 1
1 1 1 1 0 1 1
1 0 1 1 0 1 1
1 1 1 1 1 1 0
0 1 0 1 1 0 0
1 1 0 1 0 1 1
1 0 0 1 0 0 0
0 1 0 0 1 0 1
1 1 0 1 0 1 1
1 1 0 1 1 1 0
1 1 0 1 0 1 0
0 1 1 0 0 0 1
0 1 0 1 0 0 1
1 1 1 1 0 1 1
1 0 1 1 0 1 0
1 1 0 1 1 1 1
1 0 0 1 1 1 1
0 1 1 1 0 0 0
1 1 1 1 1 1 1
1 0 0 1 1 0 1
0 1 0 1 0 0 0
1 1 1 1 1 0 1
0 1 1 1 0 1 0
1 1 1 1 0 0 1
1 0 0 1 1 0 0
0 0 0 0 0 1 0
1 1 0 1 0 1 0
0 1 1 0 0 1 1
0 0 0 0 0 0 1
1 1 0 1 1 0 0
1 1 1 1 0 1 0
1 1 0 1 0 1 1
1 1 1 1 1 1 0
1 1 1 1 1 1 0
1 1 1 1 0 1 1
0 1 1 0 0 0 0
1 1 0 1 1 0 1
1 1 0 1 1 1 0
0 1 1 1 0 1 1
1 1 0 1 1 1 1
0 1 0 1 1 1 1
1 1 0 1 1 0 1
1 1 0 1 1 0 1
1 1 1 1 1 1 1
1 1 0 1 0 0 1
1 0 1 1 1 1 1
1 1 0 1 0 1 0
1 1 1 1 1 1 0
0 0 1 1 0 0 0
1 1 1 1 0 0 0
1 1 1 1 1 1 1
0 0 1 0 0 1 0
1 0 1 1 0 0 1
1 0 0 1 1 1 0
0 0 0 0 1 0 0
0 1 1 1 0 0 1
0 1 0 0 1 0 1
0 1 1 1 0 1 1
1 0 0 1 0 1 1
1 1 1 1 0 0 1
1 1 1 1 0 0 0
0 0 1 0 1 1 0
1 1 1 1 0 1 0
0 0 0 1 0 0 1
1 1 1 1 0 0 0
1 1 1 1 1 1 0
1 1 0 1 0 0 0
1 1 0 1 1 0 1
0 0 1 0 0 1 0
1 1 0 1 0 1 0
1 0 1 1 1 1 1
1 0 1 1 1 1 0
1 1 0 1 0 1 0
0 0 0 1 0 1 0
1 0 1 1 0 0 0
1 1 1 1 1 1 0
1 0 1 1 1 1 1
0 1 0 1 1 1 0
1 1 1 1 0 1 1
1 1 1 1 0 0 0
0 0 1 1 0 1 0
1 1 1 1 0 1 1
0 1 0 0 1 1 1
1 1 1 1 0 1 1
1 0 1 1 1 1 0

4 Source Code

> library(DT)
> library(psych)
> library(corrplot)
> library(ggplot2)
> library(car)
> library(REdaS)
> library(knitr)

4.1 Input Data

> library(readxl)
> Faktor_Serangan_Jantung <- read_excel("D:/kuliah nasywa/sem 5/anmul/praktikum/Faktor Serangan Jantung.xlsx")
> Faktor_Serangan_Jantung

Untuk membaca data dari excel diperlukan syntax library(readxl) supaya dapat memuat pustaka atau paket “readxl” ke dalam lingkungan R. Dengan memuat paket ini, Anda membuat fungsi-fungsi yang diperlukan dari paket “readxl” tersedia untuk digunakan dalam analisis Anda.

Kemudian untuk membaca data excel dengan nama file “Faktor Serangan Jantung.xlsx” yang terletak pada disk laptop dan disimpan dengan nama variabel Faktor_Serangan_Jantung digunakan syntax Faktor_Serangan_Jantung <- read_excel("D:/kuliah nasywa/sem5/anmul/praktikum/
Faktor Serangan Jantung.xlsx").

Jika ingin menampilkan isi data dari file Excel tersebut dapat memanggil variabel dengan nama Faktor_Serangan_Jantung

4.2 Statistika Deskriptif

> for (i in 1:ncol(Faktor_Serangan_Jantung)) {
+   frekuensi_1 <- sum(Faktor_Serangan_Jantung[, i] == 1)
+   frekuensi_0 <- sum(Faktor_Serangan_Jantung[, i] == 0)
+   print(paste(colnames(Faktor_Serangan_Jantung)[i], "Jumlah 1 =", 
+               frekuensi_1, "Jumlah 0 =", frekuensi_0, sep = " "))
+ }
  • for (i in 1:ncol(Faktor_Serangan_Jantung)) adalah loop for yang akan iterasi melalui setiap kolom dalam data frame Faktor_Serangan_Jantung. Dimana i adalah variabel iterasi yang akan mengambil nilai dari 1 hingga jumlah kolom dalam data frame Faktor_Serangan_Jantung.

  • frekuensi_1 <- sum(Faktor_Serangan_Jantung[, i] == 1) adalah pernyataan untuk menghitung frekuensi nilai 1 untuk kolom ke-idalam data frame Faktor_Serangan_Jantung.

  • frekuensi_0 <- sum(Faktor_Serangan_Jantung[, i] == 0)adalah pernyataan untuk menghitung frekuensi nilai 0 untuk kolom ke-idalam data frame Faktor_Serangan_Jantung.

  • Untuk menampilkan frekuensi nilai 1 dan 0 untuk kolom ke-i dapat digunakan syntax
    print(paste(colnames(Faktor_Serangan_Jantung)[i], "Jumlah 1 =",frekuensi_1, "Jumlah 0 =",
    frekuensi_0, sep = " ")).

4.3 Bartlett’s Test of Sphericity

> library(REdaS)
> bart_spher(Faktor_Serangan_Jantung)

Pernyataan library(REdaS) adalah perintah yang mencoba memuat pustaka atau paket yang disebut “REdaS” ke dalam lingkungan R. Setelah memuat pustaka “REdaS,” perintah bart_spher(Faktor_Serangan_Jantung) mencoba menjalankan fungsi bart_spher dengan argumen Faktor_Serangan_Jantung. Fungsi ini digunakan untuk melakukan analisis faktor menggunakan metode Bartlett’s Sphericity Test pada variabel bernama Faktor_Serangan_Jantung.

4.4 Uji KMO dan MSA

> library(REdaS)
> KMO_Result <- KMOS(Faktor_Serangan_Jantung)
> KMO_Result

Pernyataan library(REdaS) dalah perintah yang mencoba memuat pustaka atau paket yang disebut “REdaS” ke dalam lingkungan R. Setelah memuat pustaka “REdaS,” perintah KMO_Result <- KMOS(Faktor_Serangan_Jantung) digunakan untuk menjalankan fungsi KMOS dengan argumen Faktor_Serangan_Jantung. Fungsi ini adalah upaya untuk menghitung Measure of Sampling Adequacy (MSA) menggunakan metode Kaiser-Meyer-Olkin (KMO) pada data Faktor_Serangan_Jantung. Hasil perhitungan MSA akan disimpan dalam variabel bernama KMO_Result. Untuk melihat hasil dari perhitungan KMO dapat memanggil variabel bernama KMO_Result, sehingga dapat digunakan untuk mengevaluasi apakah data Anda cocok untuk analisis faktor.

4.5 Matriks Korelasi

> library(corrplot)
> datamatrix <- cor(Faktor_Serangan_Jantung)
> corrplot(datamatrix, method="number")

library(corrplot) digunakan untuk memuat pustaka atau paket “corrplot” ke dalam lingkungan R. Setelah itu, untuk menghitung matriks korelasi dari data bernama Faktor_Serangan_Jantung dapat digunakan syntax datamatrix <- cor(Faktor_Serangan_Jantung). Dalam konteks analisis faktor, matriks korelasi digunakan untuk mengukur tingkat korelasi antara variabel-variabel dalam data tersebut. Kemudian, untuk melihat visualisasi dari matriks korelasi yang telah dihitung dapat digunakan fungsi corrplot dari paket “corrplot”. Parameter method="number" digunakan untuk menampilkan nilai korelasi sebagai angka di dalam sel matriks korelasi.

4.6 Menghitung Nilai Eigen

> eigenvalues <- eigen(datamatrix)$values
> eigenvalues

Digunakan fungsi eigen() untuk menghitung nilai eigen dari matriks korelasi yang telah dihitung sebelumnya yaitu variabel bernama datamatrix. Hasil perhitungan eigenvalues ini akan disimpan dalam variabel yang diberi nama eigenvalues. Untuk melihat nilai eigenvalues yang dihasilkan dari perhitungan sebelumnya dapat dilakukan dengan memanggil variabel eigenvalues .

4.7 Scree Plot

> scree_plot <- plot(eigenvalues, main = "Scree Plot",
+                   xlab = "Faktor", ylab = "Nilai Eigen",
+                   pch = 20, col = "Sky blue", type = "o", lwd = 1.5) +
+             axis(1, at = seq(1, 7)) +
+             abline(h = 1, col = "Red", lty = 2, lwd = 1)

Untuk membuat grafik Scree Plot dapat digunakan syntax
scree_plot <- plot(eigenvalues, main = "Scree Plot", xlab = "Faktor", ylab = "Nilai Eigen", pch = 20, col = "Sky blue", type = "o", lwd = 1.5).
Dimana penjelasan dalam perintah ini adalah sebagai berikut:

  • eigenvalues merupakan vektor yang berisi nilai eigen dari komponen-komponen (faktor-faktor) dalam analisis faktor.

  • main = "Scree Plot" digunakan untuk menetapkan judul grafik menjadi “Scree Plot”.

  • xlab = "Faktor" digunakan untuk menjelaskan label sumbu x (sumbu horizontal) dan diberi nama “Faktor”.

  • ylab = "Nilai Eigen" digunakan untuk menjelaskan label sumbu y (sumbu vertikal) dan diberi nama “Nilai Eigen”.

  • pch = 20 digunakan untuk menentukan tipe simbol (marker) dalam plot. Pilihan pch = 20 menghasilkan simbol bulat yang berisi titik di tengahnya.

  • col = "Sky blue" digunakan untuk menentukan warna plot. Pada syntax tersebut, warna digunakan adalah “Sky blue”.

  • type = "o" digunakan untuk menentukan jenis plot. “o” menghasilkan plot garis dengan titik.

  • lwd = 1.5 digunakan untuk mengatur lebar garis plot.

Kemudian, untuk menambahkan sumbu x dengan tanda sumbu di titik-titik 1 hingga 16 sesuai dengan faktor yang tersedia dapat digunakan syntax axis(1, at = seq(1, 7)). Hal ini membantu mengidentifikasi setiap faktor dalam grafik. Lalu, untuk membentuk garis horizontal pada nilai y = 1 (dalam warna merah) dengan jenis garis putus-putus (lty = 2) dan lebar garis (lwd = 1) dapat digunakan syntax abline(h = 1, col = "Red", lty = 2, lwd = 1). Garis ini digunakan untuk membantu menunjukkan batas yang umumnya digunakan untuk memutuskan jumlah faktor yang akan dipertahankan. Faktor-faktor dengan eigenvalues di atas garis ini akan dipertahankan, sedangkan yang di bawahnya akan diabaikan.

4.8 Ekstrasi dan Rotasi Faktor

Dengan PCA

> r <- Faktor_Serangan_Jantung
> nfactors <- 3 #Dapat dilihat dari Scree Plot
> PCA = principal(r, nfactors, rotate = "varimax")
> PCA$communality

variabel r didefinisikan sebagai data yang disimpan dalam Faktor_Serangan_Jantung. Jumlah faktor yang akan diekstraksi dalam analisis faktor disimpan sebanyak 3 dengan syntax nfactors <- 3 jumlah faktor ini dapat disesuaikan berdasarkan hasil dari Scree Plot.
PCA = principal(r = data_corr, nfactors = nfaktor, rotate = "varimax") syntax ini digunakan untuk menjalankan fungsi principal() dalam melakukan analisis faktor. Dimana jenis rotasi yang digunakan adalah metode rotasi varimax yang bertujuan untuk membuat faktor-faktor menjadi lebih mudah diinterpretasikan.

Untuk mengakses nilai communalities (komunalitas) dari hasil analisis faktor yang disimpan dalam objek PCA dapat dipanggil dengan PCA$communality . Komunalitas adalah ukuran seberapa besar varians suatu variabel dapat dijelaskan oleh faktor-faktor yang diekstraksi. Dengan mengeksekusi baris ini, Anda mendapatkan nilai komunalitas untuk setiap variabel dalam analisis faktor.

Dengan PFA

> r <- Faktor_Serangan_Jantung
> nfactors <- 3 #Dapat dilihat dari Scree Plot
> PFA <- fa(r, nfactors, rotate = "varimax", fm = "pa")
> PFA

variabel r didefinisikan sebagai data yang disimpan dalam Faktor_Serangan_Jantung. Jumlah faktor yang akan diekstraksi dalam analisis faktor disimpan sebanyak 3 dengan syntax nfactors <- 3 jumlah faktor ini dapat disesuaikan berdasarkan hasil dari Scree Plot. Kemudian, untuk melakukan ekstrasi dan rotasi digunakan syntax berikut PFA = fa(r, nfactors, rotate = "varimax", fm = "pa") . Dimana jenis rotasi yang digunakan adalah metode rotasi varimax yang bertujuan untuk membuat faktor-faktor menjadi lebih mudah diinterpretasikan. fm = "pa" digunakan untuk menentukan metode ekstraksi faktor yang akan digunakan. Dalam hal ini, digunakan metode Principal Axis Factoring (PAF).

4.9 Interpretasi Analisis Faktor

> fa.diagram(PFA,rsize = 1)

Fungsi fa.diagram() pada R digunakan untuk membuat diagram faktor. Diagram faktor adalah diagram yang menunjukkan hubungan antara variabel-variabel dengan faktor-faktor yang dihasilkan oleh analisis faktor. Dimana fungsi fa.diagram() memiliki dua argumen, yaitu PFA adalah hasil analisis faktor dan rsize ukuran variabel pada diagram.

5 Hasil dan Pembahasan

Berikut merupakan hasil dan pembahasan dari analisis faktor yang telah dilakukan.

5.1 Statistika Deskriptif

> for (i in 1:ncol(Faktor_Serangan_Jantung)) {
+   frekuensi_1 <- sum(Faktor_Serangan_Jantung[, i] == 1)
+   frekuensi_0 <- sum(Faktor_Serangan_Jantung[, i] == 0)
+   print(paste(colnames(Faktor_Serangan_Jantung)[i], "Jumlah 1 =", 
+               frekuensi_1, "Jumlah 0 =", frekuensi_0, sep = " "))
+ }
[1] "Gender Jumlah 1 = 176 Jumlah 0 = 74"
[1] "Diabetes Jumlah 1 = 178 Jumlah 0 = 72"
[1] "Family History Jumlah 1 = 130 Jumlah 0 = 120"
[1] "Smoking Jumlah 1 = 218 Jumlah 0 = 32"
[1] "Obesity Jumlah 1 = 117 Jumlah 0 = 133"
[1] "Alcohol Consumption Jumlah 1 = 149 Jumlah 0 = 101"
[1] "Previous Heart Problems Jumlah 1 = 122 Jumlah 0 = 128"

Karena setiap variabel adalah data dengan skala nominal, maka statistika deskriptif yang ingin dilihat adalah frekuensi setiap variabelnya. Berdasarkan Output diatas didapatkan informasi frekuensi dan modus dari setiap variabel. Berikut merupakan interpretasi yang diperoleh.

  1. Pada variabel Gender, diketahui pasien yang berjenis kelamin laki-laki sebanyak 176 pasien dan pasien yang berjenis kelamin perempuan sebanyak 74 pasien. Hal ini menunjukkan bahwa pasien yang paling banyak adalah pasien berjenis kelamin laki-laki.

  2. Pada variabel Diabetes, diketahui pasien yang menderita diabetes sebanyak 178 pasien dan pasien yang tidak menderita diabetes sebanyak 72 pasien. Hal ini menunjukkan bahwa pasien yang paling banyak adalah pasien penderita diabetes.

  3. Pada variabel Family History, diketahui pasien yang memiliki riwayat keluarga dengan masalah jantung sebanyak 130 pasien dan pasien yang tidak memiliki riwayat keluarga dengan masalah jantung sebanyak 120 pasien. Hal ini menunjukkan bahwa pasien yang paling banyak adalah pasien yang memiliki riwayat keluarga dengan masalah jantung.

  4. Pada variabel Smoking, diketahui pasien yang merokok sebanyak 218 pasien dan pasien yang tidak merokok sebanyak 32 pasien. Hal ini menunjukkan bahwa pasien yang paling banyak adalah pasien yang merokok.

  5. Pada variabel Obesity, diketahui pasien yang obesitas sebanyak 117 pasien dan pasien yang tidak obesitas sebanyak 133 pasien. Hal ini menunjukkan bahwa pasien yang paling banyak adalah pasien yang tidak obesitas.

  6. Pada variabel Alcohol Consumption, diketahui pasien yang mengonsumsi alkohol sebanyak 149 pasien dan pasien yang tidak mengonsumsi alkohol sebanyak 101 pasien. Hal ini menunjukkan bahwa pasien yang paling banyak adalah pasien yang mengonsumsi alkohol.

  7. Pada variabel Previous Heart Problems, diketahui pasien yang memiliki riwayat sakit jantung sebelumnya sebanyak 122 pasien dan pasien yang tidak memilki riwayat sakit jantung sebelumnya sebanyak 128 pasien. Hal ini menunjukkan bahwa pasien yang paling banyak adalah pasien yang tidak memiliki riwayat sakit jantung sebelumnya.

5.2 Bartlett’s Test of Sphericity

> library(REdaS)
> bart_spher(Faktor_Serangan_Jantung)
    Bartlett's Test of Sphericity

Call: bart_spher(x = Faktor_Serangan_Jantung)

     X2 = 137.007
     df = 21
p-value < 2.22e-16

Hipotesis

\(H_0:\) matriks korelasi adalah matriks identitas (Tidak terdapat korelasi yang signifikan setidaknya antar beberapa variabel)

\(H_1:\) matriks korelasi bukan matriks identitas (Terdapat korelasi yang signifikan setidaknya antar beberapa variabel)

Keputusan

Berdasarkan hasil output tersebut didapatkan p-value sebesar 2.22e-16. Karena p-value (2.22e-16) < \(a\) (0.05), maka tolak \(H_0\).

Interpretasi

Dengan taraf nyata 5% dapat disimpulkan bahwa terdapat cukup bukti untuk menyatakan bahwa terdapat korelasi yang signifikan setidaknya antar beberapa variabel, sehingga matriks korelasi antar variabel pada data layak digunakan dalam analisis faktor.

5.3 Uji KMO dan MSA

> library(REdaS)
> KMO_Result <- KMOS(Faktor_Serangan_Jantung)
> KMO_Result

Kaiser-Meyer-Olkin Statistics

Call: KMOS(x = Faktor_Serangan_Jantung)

Measures of Sampling Adequacy (MSA):
                 Gender                Diabetes          Family History 
              0.5217582               0.5920957               0.5914835 
                Smoking                 Obesity     Alcohol Consumption 
              0.5250781               0.6114026               0.5598111 
Previous Heart Problems 
              0.5459596 

KMO-Criterion: 0.5354453

Berdasarkan output, diperoleh nilai KMO-Criterion (overall MSA) sebesar 0.5354453 > 0.5. Hal ini berarti bahwa analisis faktor dapat diterapkan menggunakan matriks korelasi antar variabel pada data. Selain itu, didapatkan seluruh nilai MSA untuk setiap variabel yang bernilai > 0.5. Hal ini juga berarti bahwa semua variabel dapat diikutsertakan dalam analisis faktor selanjutnya.

5.4 Matriks Korelasi

> library(corrplot)
> datamatrix <- cor(Faktor_Serangan_Jantung)
> corrplot(datamatrix, method="number")

Berdasarkan hasil plot matriks korelasi yang dibentuk, diperoleh informasi bahwa nilai koefisien korelasi antar variabel tidak sama dengan 0. Hal ini menunjukkan adanya hubungan pada setiap variabelnya sehingga memenuhi asumsi model analisis faktor. Selain itu diketahui korelasi antar variabel Gender dengan variabel Smoking sebesar 0.59, dimana nilai ini lebih besar dari korelasi variabel lainnya.

5.5 Menghitung Nilai Eigen

> eigenvalues <- eigen(datamatrix)$values
> eigenvalues
[1] 1.6847060 1.3101287 1.0573519 0.8822130 0.8649796 0.7972028 0.4034180

Berdasarkan output yang didapatkan, diperoleh informasi nilai eigen setiap variabelnya. Dimana variabel yang memiliki nilai eigen lebih dari satu ada pada komponen 1, komponen 2, dan komponen 3. Sehingga dapat disimpulkan bahwa faktor yang dapat menjelaskan keseluruhan data (faktor bermakna) hanya terdapat 3 faktor, maka faktor akan direduksi hingga 3 faktor saja.

5.6 Scree Plot

> scree_plot <- plot(eigenvalues, main = "Scree Plot",
+                   xlab = "Faktor", ylab = "Nilai Eigen",
+                   pch = 20, col = "Sky blue", type = "o", lwd = 1.5) +
+             axis(1, at = seq(1, 7)) +
+             abline(h = 1, col = "Red", lty = 2, lwd = 1)

Pernyataan bahwa terdapat banyak faktor bermakna yang akan diekstrak adalah sebanyak 3 faktor diperkuat dengan hasil scree plot ini. Berdasarkan scree plot, terlihat bahwa terdapat 3 faktor pertama yang memiliki nilai eigen lebih dari 1 (cukup baik dalam menjelaskan varians masing-masing variabel).

5.7 Ekstrasi dan Rotasi Faktor

Dengan PCA

> r <- Faktor_Serangan_Jantung
> nfactors <- 3 #Dapat dilihat dari Scree Plot
> PCA = principal(r, nfactors, rotate = "varimax")
> PCA$communality
                 Gender                Diabetes          Family History 
              0.7671935               0.4633229               0.3835764 
                Smoking                 Obesity     Alcohol Consumption 
              0.7465308               0.6708019               0.5161468 
Previous Heart Problems 
              0.5046142 

Nilai komunalitas menunjukkan bahwa variabel tersebut apakah dapat dijelaskan dengan baik oleh komponen-komponen utama dan dapat dikatakan sebagai variabel yang penting dalam menjelaskan struktur data. Variabel dikatakan dapat menjelaskan faktor dengan baik jika memiliki nilai komunalitas lebih dari 0.5. Dengan demikian, dapat disimpulkan variabel yang dapat menjelaskan faktor dengan baik adalah variabel Gender, Smoking, Obesity, Alcohol Consumption, dan Previous Heart Problems. Sedangkan variabel yang kurang dapat menjelaskan faktor dengan baik adalah variabel Diabetes dan Family History. Hal ini menunjukkan bahwa ekstrasi dengan PCA kurang cocok dengan kasus ini.

Dengan PFA

> r <- Faktor_Serangan_Jantung
> nfactors <- 3 #Dapat dilihat dari Scree Plot
> PFA <- fa(r, nfactors, rotate = "varimax", fm = "pa")
> PFA
Factor Analysis using method =  pa
Call: fa(r = r, nfactors = nfactors, rotate = "varimax", fm = "pa")
Standardized loadings (pattern matrix) based upon correlation matrix
                         PA1   PA2   PA3   h2   u2 com
Gender                  0.82 -0.02  0.12 0.69 0.31 1.0
Diabetes                0.09  0.31 -0.02 0.10 0.90 1.2
Family History          0.13 -0.29 -0.11 0.11 0.89 1.7
Smoking                 0.71  0.01  0.05 0.51 0.49 1.0
Obesity                 0.13 -0.03  0.48 0.25 0.75 1.2
Alcohol Consumption     0.08 -0.30 -0.24 0.15 0.85 2.1
Previous Heart Problems 0.01  0.41 -0.07 0.17 0.83 1.1

                       PA1  PA2  PA3
SS loadings           1.23 0.43 0.32
Proportion Var        0.18 0.06 0.05
Cumulative Var        0.18 0.24 0.28
Proportion Explained  0.62 0.22 0.16
Cumulative Proportion 0.62 0.84 1.00

Mean item complexity =  1.3
Test of the hypothesis that 3 factors are sufficient.

df null model =  21  with the objective function =  0.56 with Chi Square =  137.01
df of  the model are 3  and the objective function was  0 

The root mean square of the residuals (RMSR) is  0.01 
The df corrected root mean square of the residuals is  0.02 

The harmonic n.obs is  250 with the empirical chi square  0.74  with prob <  0.86 
The total n.obs was  250  with Likelihood Chi Square =  0.96  with prob <  0.81 

Tucker Lewis Index of factoring reliability =  1.124
RMSEA index =  0  and the 90 % confidence intervals are  0 0.066
BIC =  -15.61
Fit based upon off diagonal values = 1
Measures of factor score adequacy             
                                                   PA1   PA2   PA3
Correlation of (regression) scores with factors   0.87  0.58  0.53
Multiple R square of scores with factors          0.76  0.33  0.28
Minimum correlation of possible factor scores     0.51 -0.33 -0.43

Berdasarkan hasil analisis faktor pada output tersebut terdapat 3 faktor yang mempengaruhi resiko serangan jantung.Dimana, untuk melihat setiap variabel lebih dominan berada pada faktor 1, 2, atau 3 dapat diketahui dari persamaan berikut:

\(X_1 = 0.82 F_1 - 0.02 F_2 + 0.12 F_3\)
\(X_2 = 0.09 F_1 + 0.31 F_2 - 0.02 F_3\)
\(X_3 = 0.13 F_1 - 0.29 F_2 - 0.11 F_3\)
\(X_4 = 0.71 F_1 + 0.01 F_2 + 0.05 F_3\)
\(X_5 = 0.13 F_1 - 0.03 F_2 + 0.48 F_3\)
\(X_6 = 0.08 F_1 - 0.30 F_2 - 0.24 F_3\)
\(X_7 = 0.01 F_1 + 0.41 F_2 - 0.07 F_3\)

Untuk memastikan suatu variabel masuk dalam kelompok faktor 1, 2, atau 3 dapat ditentukan dengan melihat nilai mutlak korelasi terbesar antara variabel dengan faktor (Component) yang terbentuk. Tanda positif dan negatif menunjukkan arah korelasi dari variabel tersebut. Hal ini berarti bahwa variabel \(X_1\) dan \(X_4\) masuk dalam faktor 1, variabel \(X_2\), \(X_6\), dan \(X_7\) masuk dalam faktor 2, variabel \(X_5\) masuk dalam faktor 3, sedangkan variabel \(X_3\) tidak masuk dalam faktor karena memiliki nilai korelasi yang terlalu kecil. Hal ini mengindikasikan bahwa variabel \(X_3\) dijelaskan dengan lebih baik oleh faktor lain di luar model.

Selain itu didapatkan nilai proporsi ragam (Proportion Var) setiap faktor sebagai berikut:

Faktor 1 = 0.18
Faktor 2 = 0.06
Faktor 3 = 0.05

Hal ini menunjukkan bahwa faktor yang paling dominan adalah faktor 1 karena memiliki nilai proporsi ragam terbesar. Dimana faktor pertama mampu menjelaskan keragaman sebesar 18%, faktor kedua sebesar 6%, dan faktor ketiga sebesar 5%. Secara kumulatif, ketiga faktor ini mampu menjelaskan keragaman sebesar 29%.

5.8 Interpretasi Analisis Faktor

> fa.diagram(PFA,rsize = 1)

Berdasarkan hasil output tersebut memperkuat pernyataan sebelumnya. Sehingga dapat disimpulkan sebagai berikut:

  • Pada faktor 1 (PA1) diketahui bahwa faktor tersebut berkorelasi signifikan dengan variabel \(X_1\) (Gender) dan \(X_4\) (Smoking). Kedua variabel tersebut merupakan faktor gaya hidup atau perilaku yang dapat meningkatkan risiko seseorang terkena penyakit kardiovaskular, termasuk serangan jantung. Sehingga faktor ini dapat diinterpretasikan sebagai faktor gaya hidup.
  • Pada faktor 2 (PA2) diketahui bahwa faktor tersebut berkorelasi signifikan dengan variabel \(X_2\) (Diabetes), \(X_6\) (Alcohol Consumption), dan \(X_7\) (Previous Heart Problems). Dimana variabel \(X_6\) (Alcohol Consumption) berkorelasi negatif pada faktor 2 (hubungan keduanya berbanding terbalik). Ketiga variabel tersebut merupakan faktor medis yang dapat meningkatkan risiko seseorang terkena penyakit kardiovaskular, termasuk serangan jantung. Sehingga faktor ini dapat diinterpretasikan sebagai faktor medis.
  • Pada faktor 3 (PA3) diketahui bahwa faktor tersebut berkorelasi signifikan dengan variabel \(X_5\) (Obesity). Dimana variabel tersebut merupakan faktor obesitas yang dapat meningkatkan risiko seseorang terkena penyakit kardiovaskular, termasuk serangan jantung. Sehingga faktor ini dapat diinterpretasikan sebagai faktor obesitas.

6 Penutup

6.1 Kesimpulan

Berdasarkan hasil analisis faktor yang telah dilakukan didapatkan 3 faktor dari 7 variabel yang mempengaruhi resiko serangan jantung. Ketiga faktor tersebut diinterpretasikan sebagai faktor gaya hidup, faktor medis, dan faktor obesitas. Faktor gaya hidup terdiri dari variabel gender dan smoking, faktor medis terdiri dari variabel diabetes, alcohol consumption, dan previous heart problems, serta faktor obesitas terdiri dari variabel obesity. Variabel family history tidak memilki korelasi yang signifikan pada ketiga faktor yang terbentuk. Hal ini mengindikasikan bahwa variabel \(X_3\) dijelaskan dengan lebih baik oleh faktor lain di luar model. Ketiga faktor tersebut dapat menjelaskan keragaman dari variabel sebesar 29%.

Selain itu, faktor yang dominan dari ketiga faktor adalah faktor gaya hidup. Hal ini dikarenakan faktor gaya hidup menjelaskan keragaman variabel sebesar 18%, sedangkan, faktor medis hanya mampu menjelaskan sebesar 6% dan faktor obesitas hanya mampu menjelaskan sebesar 5%.

Melalui hal tersebut diharapkan masyarakat lebih mengetahui faktor-faktor apa saja yang dapat mempengaruhi resiko terjadinya serangan jantung. Sehingga masyarakat mengetahui tentang pentingnya kesadaran akan faktor-faktor risiko serangan jantung dan langkah-langkah preventif yang dapat diambil.

6.2 Saran

Adapun saran dalam penelitian ini:

  1. Melakukan penelitian dengan sampel yang lebih besar. Sampel yang lebih besar dapat memberikan hasil penelitian yang lebih akurat dan dapat digeneralisasi ke populasi yang lebih luas.

  2. Meneliti variabel-variabel yang berbeda. Hal ini bertujuan untuk mendapatkan pemahaman yang lebih luas tentang topik penelitian. Sehingga dapat diketahui faktor-faktor apa saja yang mungkin mempengaruhi resiko serangan jantung.

7 Daftar Pustaka

Cleff, T. (2019). Applied Statistics and Multivariate Data Analysis for Business and Economics: A Modern Approach Using SPSS, Stata, and Excel. Springer.

Khoirunisa, Dede. (2014). Pengetahuan Keluarga dalam Pertolongan Pertama Serangan Jantung / INFARK MIOKARD Di Poli Jantung RSUD Dr. Harjono Ponorogo. Skripsi thesis, Universitas Muhammadiyah Ponorogo.

Nugroho, Sigit. (2008). Statistika Multivariat Terapan. Bengkulu: UNIB Press.

Sumber data : https://www.kaggle.com/datasets/iamsouravbanerjee/heart-attack-prediction-dataset/