Analisis data kategori merupakan metode statistik yang digunakan untuk menganalisis data yang berbentuk kategori atau klasifikasi. Data kategori biasanya berasal dari variabel yang diukur menggunakan skala nominal atau ordinal. Pada data ini, nilai observasi tidak menunjukkan ukuran numerik melainkan menunjukkan kelompok atau kategori tertentu.
Menurut Agresti (2013), analisis data kategori adalah teknik statistik yang digunakan untuk mempelajari hubungan antara variabel kategorik melalui distribusi frekuensi, tabel kontingensi, serta ukuran asosiasi.
Beberapa karakteristik utama variabel kategori antara lain:
Bersifat diskrit - Nilai variabel hanya terbatas pada kategori tertentu
Mutually exclusive - Setiap observasi hanya dapat masuk ke dalam satu kategori
Exhaustive - Semua kemungkinan nilai harus tercakup dalam kategori
Dapat diukur dalam frekuensi atau proporsi - Analisis didasarkan pada hitungan atau persentase
| Jenis Variabel | Penjelasan | Contoh |
|---|---|---|
| Nominal | Kategori yang tidak memiliki urutan | Jenis kelamin, warna, golongan darah |
| Ordinal | Kategori yang memiliki urutan | Tingkat pendidikan (SD-SMP-SMA-PT), jabatan di kantor |
| Dikotomus | Hanya dua kategori | Ya / tidak, sehat/sakit, Laki-laki/perempuan |
Analisis data kategori sering digunakan dalam berbagai bidang penelitian.
| Bidang | Contoh Variabel |
|---|---|
| Kesehatan | Status vaksinasi |
| Sosial | Status pernikahan |
| Pendidikan | Tingkat pendidikan |
Tabel kontingensi (juga dikenal sebagai cross-tabulation atau crosstab) adalah tabel yang menyajikan frekuensi bersama dari dua atau lebih variabel kategori. Tabel ini memungkinkan peneliti untuk melihat distribusi simultan dari variabel-variabel tersebut dan mengidentifikasi pola hubungan antar variabel
Contoh tabel kontingensi 2×2:
| Kolom 1 | Kolom 2 | Total | |
|---|---|---|---|
| Baris 1 | n11 | n12 | n1+ |
| Baris 2 | n21 | n22 | n2+ |
| Total | n+1 | n+2 | n |
Keterangan:
Distribusi bersama adalah probabilitas suatu observasi berada pada kategori baris ke-i dan kolom ke-j.
\[ P(i,j)=\frac{n_{ij}}{n} \]
Distribusi marginal menunjukkan probabilitas suatu kategori tanpa memperhatikan kategori lainnya.
\[ P(i)=\frac{n_{i+}}{n} \]
\[ P(j)=\frac{n_{+j}}{n} \]
Probabilitas bersyarat menunjukkan peluang suatu kategori terjadi dengan syarat kategori lain telah diketahui.
\[ P(j|i)=\frac{n_{ij}}{n_{i+}} \]
Odds adalah perbandingan antara probabilitas suatu kejadian terjadi dengan probabilitas kejadian tersebut tidak terjadi.
Rumus Odds:
\[ Odds=\frac{p}{1-p} \]
Odds Ratio digunakan untuk mengukur kekuatan hubungan antara dua variabel kategori.
\[ OR=\frac{ad}{bc} \]
| Nilai OR | Interpretasi |
|---|---|
| OR = 1 | Tidak ada hubungan |
| OR > 1 | Hubungan positif |
| OR < 1 | Hubungan negatif |
Relative Risk membandingkan risiko suatu kejadian antara dua kelompok.
\[ RR=\frac{P(kejadian|kelompok1)}{P(kejadian|kelompok2)} \]
Pada bagian ini diberikan contoh analisis data kategori menggunakan tabel kontingensi untuk melihat hubungan antara status vaksinasi dan kejadian infeksi COVID-19.
Tabel berikut menunjukkan distribusi frekuensi antara status vaksinasi dan kejadian infeksi.
| Status Vaksinasi | Terinfeksi | Tidak Terinfeksi | Total |
|---|---|---|---|
| Divaksin | 15 | 185 | 200 |
| Tidak Divaksin | 45 | 55 | 100 |
| Total | 60 | 240 | 300 |
Keterangan:
\(n_{11} = 15\)
\(n_{12} = 185\)
\(n_{21} = 45\)
\(n_{22} = 55\)
Total pengamatan:
\[ n = 300 \]
Probabilitas bersama diperoleh dari frekuensi masing-masing sel dibagi dengan total pengamatan.
\[ P(Divaksin,Terinfeksi) = \frac{15}{300} = 0.05 \]
\[ P(Divaksin,TidakTerinfeksi) = \frac{185}{300} = 0.617 \]
\[ P(TidakDivaksin,Terinfeksi) = \frac{45}{300} = 0.15 \]
\[ P(TidakDivaksin,TidakTerinfeksi) = \frac{55}{300} = 0.183 \]
Tabel probabilitas bersama:
| Terinfeksi | Tidak Terinfeksi | |
|---|---|---|
| Divaksin | 0.05 | 0.617 |
| Tidak Divaksin | 0.15 | 0.183 |
Probabilitas marginal diperoleh dari jumlah baris atau kolom dibagi total observasi.
Probabilitas status vaksinasi:
\[ P(Divaksin) = \frac{200}{300} = 0.667 \]
\[ P(TidakDivaksin) = \frac{100}{300} = 0.333 \]
Probabilitas status infeksi:
\[ P(Terinfeksi) = \frac{60}{300} = 0.20 \]
\[ P(TidakTerinfeksi) = \frac{240}{300} = 0.80 \]
Probabilitas bersyarat digunakan untuk melihat peluang suatu kejadian dengan syarat kejadian lain diketahui.
Probabilitas terinfeksi jika divaksin:
\[ P(Terinfeksi|Divaksin) = \frac{15}{200} = 0.075 \]
Probabilitas terinfeksi jika tidak divaksin:
\[ P(Terinfeksi|TidakDivaksin) = \frac{45}{100} = 0.45 \]
Interpretasi:
Peluang individu yang tidak divaksin untuk terinfeksi lebih besar dibandingkan individu yang telah divaksin.
Odds adalah perbandingan antara peluang kejadian dengan peluang tidak terjadinya kejadian tersebut.
Odds terinfeksi pada kelompok divaksin:
\[ Odds_{Divaksin} = \frac{0.075}{1-0.075} \]
\[ = \frac{0.075}{0.925} = 0.081 \]
Odds terinfeksi pada kelompok tidak divaksin:
\[ Odds_{TidakDivaksin} = \frac{0.45}{1-0.45} \]
\[ = \frac{0.45}{0.55} = 0.818 \]
Odds Ratio dihitung menggunakan rumus:
\[ OR = \frac{ad}{bc} \]
dengan:
\(a = 15\)
\(b = 185\)
\(c = 45\)
\(d = 55\)
Sehingga diperoleh:
\[ OR = \frac{(15)(55)}{(185)(45)} \]
\[ OR = \frac{825}{8325} = 0.099 \]
Interpretasi:
Nilai Odds Ratio < 1 menunjukkan bahwa vaksinasi dapat menurunkan peluang terjadinya infeksi.
Relative Risk membandingkan risiko kejadian pada dua kelompok.
\[ RR = \frac{P(Terinfeksi|Divaksin)}{P(Terinfeksi|TidakDivaksin)} \]
\[ RR = \frac{0.075}{0.45} = 0.167 \]
Interpretasi:
Risiko terinfeksi pada kelompok divaksin hanya sekitar 16,7% dibandingkan kelompok yang tidak divaksin, sehingga vaksinasi memberikan efek perlindungan terhadap infeksi.
data <- matrix(c(15,185,45,55), nrow=2, byrow=TRUE)
rownames(data) <- c("Divaksin","Tidak Divaksin")
colnames(data) <- c("Terinfeksi","Tidak Terinfeksi")
data
## Terinfeksi Tidak Terinfeksi
## Divaksin 15 185
## Tidak Divaksin 45 55
prop.table(data,1)
## Terinfeksi Tidak Terinfeksi
## Divaksin 0.075 0.925
## Tidak Divaksin 0.450 0.550
or <- (data[1,1]*data[2,2])/(data[1,2]*data[2,1])
or
## [1] 0.0990991
p1 <- data[1,1]/sum(data[1,])
p2 <- data[2,1]/sum(data[2,])
rr <- p1/p2
rr
## [1] 0.1666667
chisq.test(data)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: data
## X-squared = 56.273, df = 1, p-value = 6.306e-14
barplot(data,
beside=TRUE,
col=c("steelblue","tomato"),
legend=rownames(data),
main="Kasus Infeksi Berdasarkan Status Vaksin")
Berdasarkan hasil analisis data mengenai efektivitas vaksin COVID-19 terhadap kejadian infeksi dengan jumlah partisipan sebanyak 300 orang, diperoleh beberapa temuan statistik yang menunjukkan adanya hubungan antara status vaksinasi dengan kejadian infeksi COVID-19.
Hasil uji Chi-Square menunjukkan bahwa:
Nilai p-value yang sangat kecil dan jauh di bawah tingkat signifikansi (α = 0,05) menunjukkan bahwa hasil pengujian sangat signifikan secara statistik. Oleh karena itu, hipotesis nol (H₀) yang menyatakan bahwa tidak terdapat hubungan antara status vaksinasi dengan kejadian infeksi COVID-19 ditolak.
Dengan demikian dapat disimpulkan bahwa terdapat hubungan yang signifikan antara status vaksinasi dan kejadian infeksi COVID-19. Individu yang divaksin dan individu yang tidak divaksin menunjukkan distribusi kejadian infeksi yang berbeda secara signifikan.
Selain itu, nilai statistik Chi-Square yang cukup besar menunjukkan bahwa terdapat perbedaan antara frekuensi yang diamati dan frekuensi yang diharapkan pada tabel kontingensi. Hal ini memperkuat bukti bahwa kedua variabel tersebut tidak bersifat independen.
Nilai Odds Ratio (OR) sebesar 0,099 menunjukkan adanya hubungan yang kuat antara vaksinasi dan penurunan kemungkinan terjadinya infeksi.
Nilai OR < 1 menunjukkan bahwa vaksinasi memiliki efek protektif terhadap kejadian infeksi COVID-19. Artinya, peluang relatif terinfeksi COVID-19 pada individu yang divaksin hanya sekitar 9,9% dibandingkan individu yang tidak divaksin.
Dengan kata lain, peluang terjadinya infeksi pada kelompok yang telah divaksinasi jauh lebih kecil dibandingkan kelompok yang tidak divaksin.
Hasil analisis juga menunjukkan nilai Relative Risk (RR) sebesar 0,167.
Nilai RR < 1 menunjukkan bahwa risiko terinfeksi COVID-19 pada kelompok yang divaksin lebih rendah dibandingkan kelompok yang tidak divaksin.
Interpretasinya adalah bahwa risiko infeksi pada individu yang telah divaksin hanya sekitar 16,7% dari risiko infeksi pada individu yang tidak divaksin.
Secara keseluruhan, ketiga ukuran statistik tersebut (Chi-Square, Odds Ratio, dan Relative Risk) secara konsisten menunjukkan bahwa vaksinasi memiliki hubungan yang signifikan dan bersifat protektif terhadap kejadian infeksi COVID-19.
Dalam konteks kesehatan masyarakat, hasil analisis statistik ini memiliki implikasi penting terkait efektivitas vaksin dalam mencegah penyebaran penyakit COVID-19.
Efektivitas vaksin dapat dihitung menggunakan nilai Relative Risk dengan rumus:
\[ Efektivitas\ Vaksin = (1 - RR) \times 100\% \]
Sehingga diperoleh:
\[ Efektivitas\ Vaksin = (1 - 0.167) \times 100\% \]
\[ Efektivitas\ Vaksin = 83.3\% \]
Hasil ini menunjukkan bahwa vaksin memiliki efektivitas sebesar 83,3% dalam mencegah infeksi COVID-19. Artinya, individu yang menerima vaksin memiliki kemungkinan terinfeksi yang 83,3% lebih rendah dibandingkan individu yang tidak divaksinasi.
Berdasarkan data penelitian diperoleh:
Selisih risiko absolut dapat dihitung sebagai berikut:
\[ Risk\ Difference = 0.45 - 0.075 \]
\[ Risk\ Difference = 0.375 \]
Artinya terdapat penurunan risiko sebesar 37,5% setelah vaksinasi dilakukan.
Dengan kata lain, dari setiap 100 individu yang divaksin, sekitar 37 hingga 38 orang dapat terhindar dari infeksi COVID-19 yang mungkin terjadi jika mereka tidak menerima vaksin.
Number Needed to Treat (NNT) merupakan ukuran yang digunakan untuk mengetahui berapa banyak individu yang perlu mendapatkan intervensi untuk mencegah satu kejadian penyakit.
\[ NNT = \frac{1}{Risiko\ kelompok\ kontrol - Risiko\ kelompok\ perlakuan} \]
Sehingga diperoleh:
\[ NNT = \frac{1}{0.45 - 0.075} \]
\[ NNT = \frac{1}{0.375} \]
\[ NNT = 2.67 \]
Nilai ini menunjukkan bahwa sekitar tiga orang perlu divaksin untuk mencegah satu kasus infeksi COVID-19. Nilai NNT yang relatif kecil menunjukkan bahwa vaksin memiliki efektivitas yang sangat baik dalam mencegah terjadinya penyakit.
Berdasarkan hasil analisis data kategori menggunakan tabel kontingensi antara status vaksinasi dan kejadian infeksi COVID-19, dapat disimpulkan bahwa terdapat hubungan yang signifikan antara kedua variabel tersebut.
Hasil uji Chi-Square menunjukkan nilai p-value yang sangat kecil sehingga hipotesis nol yang menyatakan tidak adanya hubungan antara variabel ditolak. Hal ini menunjukkan bahwa status vaksinasi berhubungan secara signifikan dengan kejadian infeksi COVID-19.
Selain itu, nilai Odds Ratio sebesar 0,099 menunjukkan bahwa vaksinasi memiliki efek protektif terhadap kemungkinan terjadinya infeksi. Individu yang telah divaksin memiliki peluang terinfeksi yang jauh lebih kecil dibandingkan individu yang tidak divaksin.
Nilai Relative Risk sebesar 0,167 juga menunjukkan bahwa risiko infeksi pada kelompok yang divaksin jauh lebih rendah dibandingkan kelompok yang tidak divaksin. Berdasarkan perhitungan efektivitas vaksin menggunakan nilai Relative Risk, diperoleh bahwa vaksin memiliki efektivitas sekitar 83,3% dalam mencegah infeksi COVID-19.
Secara keseluruhan, hasil analisis ini menunjukkan bahwa vaksinasi merupakan intervensi kesehatan yang efektif dalam menurunkan risiko infeksi COVID-19. Oleh karena itu, peningkatan cakupan vaksinasi dalam masyarakat dapat menjadi strategi penting dalam mengendalikan penyebaran penyakit serta mengurangi beban sistem pelayanan kesehatan.
Agresti, A. (2013). Categorical Data Analysis. Wiley.
Agresti, A. (2019). An Introduction to Categorical Data Analysis. Wiley.
Data yang digunakan berbentuk tabel kontingensi 2×2, yang membandingkan dua kelompok, yaitu Smoker dan Non-Smoker, terhadap dua status penyakit, yaitu Cancer (+) dan Cancer (-).
Berdasarkan deskripsi tugas, data ini disajikan dalam konteks case-control study, dengan total 709 kasus kanker paru dan 709 kontrol.
Kejadian penyakit dapat dinilai melalui berbagai ukuran asosiasi. Oleh karena itu, kasus ini tidak cukup dianalisis hanya dengan uji signifikansi statistik, tetapi juga perlu dihitung ukuran efek yang menggambarkan besar dan arah hubungan.
Pendekatan ini penting agar kesimpulan yang diperoleh tidak hanya menjawab pertanyaan “apakah ada hubungan?”, tetapi juga “seberapa kuat hubungan tersebut?” dan “apa makna substantifnya?”.
Variabel yang Dianalisis
Hipotesis
\[ H_0: \text{Tidak ada hubungan antara kebiasaan merokok dengan kejadian kanker paru} \]
\[ H_1: \text{Ada hubungan antara kebiasaan merokok dengan kejadian kanker paru} \]
Taraf signifikansi: \[ \alpha = 0.05 \]
data_kasus1 <- matrix(
c(688, 650, 21, 59),
nrow = 2,
byrow = TRUE,
dimnames = list(
c("Smoker", "Non-Smoker"),
c("Cancer (+)", "Cancer (-)")
)
)
addmargins(data_kasus1)
## Cancer (+) Cancer (-) Sum
## Smoker 688 650 1338
## Non-Smoker 21 59 80
## Sum 709 709 1418
Tabel di atas menunjukkan bahwa dari 1338 individu yang termasuk kelompok perokok, sebanyak 688 merupakan kasus kanker paru dan 650 merupakan kontrol. Sementara itu, dari 80 individu non-perokok, sebanyak 21 merupakan kasus kanker paru dan 59 merupakan kontrol. Penyusunan tabel kontingensi ini merupakan tahap awal yang penting karena seluruh estimasi proporsi, ukuran asosiasi, dan pengujian hipotesis akan didasarkan pada frekuensi yang terdapat pada tabel tersebut. Secara deskriptif, tampak bahwa jumlah kasus kanker paru pada kelompok perokok jauh lebih besar daripada kelompok non-perokok. Namun, untuk memastikan apakah perbedaan tersebut cukup kuat secara statistik dan substantif, diperlukan analisis inferensial lebih lanjut.
Langkah pertama adalah menghitung proporsi kejadian kanker paru pada masing-masing kelompok. Misalkan: \[ \hat{p}_1: \text{proporsi kejadian kanker paru pada kelompok perokok} \] \[ \hat{p}_2: \text{proporsi kejadian kanker paru pada kelompok non-perokok} \]
Rumus
\[ \hat{p}_1 = \frac{a}{a+b}, \quad \hat{p}_2 = \frac{c}{c+d} \]
Perhitungan Manual
\[ \hat{p}_1{Smoker} = \frac{688}{1338} = 0.5144 \]
\[ \hat{p}_2{Non-Smoker} = \frac{21}{80} = 0.2625 \]
Interpretasi
Hasil tersebut menunjukkan bahwa proporsi kejadian kanker paru pada kelompok perokok adalah sekitar 51,42%, sedangkan pada kelompok non-perokok sebesar 26,25%. Secara deskriptif, kelompok perokok memiliki proporsi kasus kanker paru yang jauh lebih tinggi dibandingkan kelompok non-perokok.
Secara substantif, hasil ini memberi indikasi awal bahwa kebiasaan merokok mungkin berhubungan dengan peningkatan kejadian kanker paru. Akan tetapi, perbedaan proporsi saja belum cukup untuk menarik kesimpulan inferensial, sehingga perlu dilengkapi dengan interval kepercayaan dan pengujian hipotesis.
R
p_smoker <- data_kasus1[1, 1] / sum(data_kasus1[1, ])
p_non_smoker <- data_kasus1[2, 1] / sum(data_kasus1[2, ])
data.frame(
Kelompok = c("Smoker", "Non-Smoker"),
Proporsi = round(c(p_smoker, p_non_smoker), 4),
Persentase = paste0(round(c(p_smoker, p_non_smoker) * 100, 2), "%")
)
## Kelompok Proporsi Persentase
## 1 Smoker 0.5142 51.42%
## 2 Non-Smoker 0.2625 26.25%
Untuk setiap proporsi, dapat dihitung interval kepercayaan 95% dengan pendekatan Wald:
Rumus (metode Wald)
\[ CI = \hat{p} \pm z_{\alpha/2} \sqrt{\frac{\hat{p}(1-\hat{p})}{n}} \]
Perhitungan manual untuk Smoker: \[ SE (\hat{p}_1{Smoker})= \sqrt{\frac{0{,}5144 \times 0{,}4856}{1338}} = 0{,}0137 \]
\[ CI (\hat{p}_1) = 0{,}5144 \pm 1{,}96 \times 0{,}0137 = [0{,}4876 \; ; \; 0{,}5412] \] Perhitungan manual untuk Non-Smoker: \[ SE (\hat{p}_2{Non-Smoker})= \sqrt{\frac{0{,}2625 \times 0{,}7375}{80}} = 0{,}0492 \]
\[ CI (\hat{p}_2) = 0{,}2625 \pm 1{,}96 \times 0{,}0492 = [0{,}1661 \; ; \; 0{,}3589] \] Interpretasi: Dengan tingkat kepercayaan 95%, proporsi kejadian kanker paru pada kelompok perokok diperkirakan berada antara 48,74% hingga 54,10%, sedangkan pada kelompok non-perokok berada antara 16,61% hingga 35,89%. Kedua interval ini tidak banyak tumpang tindih, sehingga secara visual sudah memberi petunjuk adanya perbedaan yang cukup nyata antara kedua kelompok.
R
ci_wald <- function(x, n) {
p <- x / n
z <- qnorm(0.975)
lower <- p - z * sqrt(p * (1 - p) / n)
upper <- p + z * sqrt(p * (1 - p) / n)
c(estimate = p, lower = lower, upper = upper)
}
ci_smoker <- ci_wald(688, 1338)
ci_non_smoker <- ci_wald(21, 80)
data.frame(
Kelompok = c("Smoker", "Non-Smoker"),
Proporsi = round(c(ci_smoker["estimate"], ci_non_smoker["estimate"]), 4),
CI_Lower = round(c(ci_smoker["lower"], ci_non_smoker["lower"]), 4),
CI_Upper = round(c(ci_smoker["upper"], ci_non_smoker["upper"]), 4)
)
## Kelompok Proporsi CI_Lower CI_Upper
## 1 Smoker 0.5142 0.4874 0.5410
## 2 Non-Smoker 0.2625 0.1661 0.3589
Risk Difference (RD) mengukur perbedaan absolut antara dua proporsi. Ukuran ini sangat berguna ketika kita ingin mengetahui seberapa besar tambahan proporsi kejadian pada kelompok terpapar dibandingkan kelompok tidak terpapar. Rumus
\[ RD = \hat{p}_1 - \hat{p}_2 \] \[ SE(RD) = \sqrt{\frac{\hat{p}_1(1-\hat{p}_1)}{n_1} + \frac{\hat{p}_2(1-\hat{p}_2)}{n_2}} \] \[ CI_{95\%} = RD \pm 1{,}96 \times SE(RD) \]
Perhitungan manual \[ RD = 0{,}5144 - 0{,}2625 = 0{,}2519 \]
\[ SE(RD) = \sqrt{\frac{0{,}5144 \times 0{,}4856}{1338} + \frac{0{,}2625 \times 0{,}7375}{80}} = 0{,}0516 \]
\[ CI_{95\%} = 0{,}2519 \pm 1{,}96 \times 0{,}0516 = [0{,}1508 \; ; \; 0{,}3530] \] Interpretasi: Perbedaan proporsi kejadian kanker paru antara perokok dan non-perokok adalah 25,19% (CI 95%: 15,08%–35,30%). Karena interval tidak mencakup 0, perbedaan ini signifikan secara statistik. Secara substantif, hal ini berarti bahwa dari setiap 100 individu, terdapat sekitar 25 kasus tambahan kanker paru pada kelompok perokok dibandingkan non-perokok
Analisis Menggunakan R
rd <- p_smoker - p_non_smoker
se_rd <- sqrt(
(p_smoker * (1 - p_smoker) / 1338) +
(p_non_smoker * (1 - p_non_smoker) / 80)
)
rd_ci <- rd + c(-1, 1) * 1.96 * se_rd
hasil <- data.frame(
Ukuran = "Risk Difference",
Estimate = round(rd, 4),
CI_95_Lower = round(rd_ci[1], 4),
CI_95_Upper = round(rd_ci[2], 4)
)
hasil
## Ukuran Estimate CI_95_Lower CI_95_Upper
## 1 Risk Difference 0.2517 0.1516 0.3518
Relative Risk (RR) mengukur perbandingan risiko kejadian antara kelompok terpapar dan kelompok pembanding. Rumus
\[ RR = \frac{\hat{p}_1}{\hat{p}_2} \]
\[ SE(\ln RR) = \sqrt{\frac{1-\hat{p}_1}{n_1 \hat{p}_1} + \frac{1-\hat{p}_2}{n_2 \hat{p}_2}} \]
\[ CI_{95\%} = \exp\left( \ln(RR) \pm 1{,}96 \times SE(\ln RR) \right) \]
Perhitungan Manual \[ RR = \frac{0{,}5144}{0{,}2625} = 1{,}959 \]
\[ SE(\ln RR) = \sqrt{ \frac{0{,}4856}{1338 \times 0{,}5144} + \frac{0{,}7375}{80 \times 0{,}2625} } = 0{,}1697 \]
\[ CI_{95\%} = \exp\left(0{,}672 \pm 1{,}96 \times 0{,}1697\right) = [1{,}41 \; ; \; 2{,}72] \] Interpretasi Karena interval kepercayaan RR tidak mencakup 1, maka dapat disimpulkan bahwa risiko kejadian kanker paru pada kelompok perokok memang secara signifikan lebih tinggi daripada kelompok non-perokok.
Secara substantif, hasil ini menunjukkan bahwa individu yang merokok memiliki risiko hampir 1,96 kali untuk mengalami kanker paru dibandingkan individu yang tidak merokok. Nilai ini menunjukkan adanya asosiasi yang cukup kuat secara epidemiologis.
Catatan penting: dalam konteks case-control study, ukuran yang secara klasik paling relevan sebenarnya adalah Odds Ratio, sedangkan penggunaan RR lebih lazim pada studi kohort. Namun, menampilkan RR dalam tugas ini tetap berguna sebagai ukuranpembanding, selama interpretasinya dilakukan dengan hati-hati.
Analisis Menggunakan R
rr <- p_smoker / p_non_smoker
log_rr <- log(rr)
se_log_rr <- sqrt(
(1 - p_smoker) / (1338 * p_smoker) +
(1 - p_non_smoker) / (80 * p_non_smoker)
)
rr_ci <- exp(log_rr + c(-1, 1) * 1.96 * se_log_rr)
data.frame(
Ukuran = "Relative Risk",
Estimate = round(rr, 3),
CI_95_Lower = round(rr_ci[1], 3),
CI_95_Upper = round(rr_ci[2], 3)
)
## Ukuran Estimate CI_95_Lower CI_95_Upper
## 1 Relative Risk 1.959 1.352 2.839
Odds Ratio (OR) merupakan ukuran asosiasi yang paling penting pada tabel 2×2, khususnya dalam studi case-control. Rumus \[ OR = \frac{a \times d}{b \times c} \]
\[ SE(\ln OR) = \sqrt{\frac{1}{a} + \frac{1}{b} + \frac{1}{c} + \frac{1}{d}} \]
\[ CI_{95\%} = \exp\left( \ln(OR) \pm 1{,}96 \times SE(\ln OR) \right) \]
Perhitungan manual \[ OR = \frac{688 \times 59}{650 \times 21} = 2{,}974 \]
\[ SE(\ln OR) = \sqrt{ \frac{1}{688} + \frac{1}{650} + \frac{1}{21} + \frac{1}{59} } \]
\[ CI_{95\%} = \exp\left(1{,}090 \pm 1{,}96 \times 0{,}2608\right) = [1{,}78 \; ; \; 4{,}96] \]
Interpretasi: Karena interval kepercayaan OR tidak mencakup 1, maka odds kejadian kanker paru pada kelompok perokok secara signifikan lebih tinggi daripada pada kelompok non-perokok.
Secara substantif, hasil ini berarti bahwa odds kanker paru pada perokok sekitar 2,97 kali odds pada non-perokok. Nilai OR yang mendekati 3 menunjukkan bahwa hubungan antara merokok dan kanker paru tergolong kuat, bukan hanya signifikan secara statistik.
Dalam studi case-control, OR merupakan ukuran yang paling tepat untuk dilaporkan secara utama. Oleh karena itu, pada kasus ini, OR dapat dianggap sebagai indikator utama kekuatan asosiasi.
Analisis Menggunakan R
a <- data_kasus1[1, 1]; b <- data_kasus1[1, 2]
c <- data_kasus1[2, 1]; d <- data_kasus1[2, 2]
or <- (a * d) / (b * c)
log_or <- log(or)
se_log_or <- sqrt(1/a + 1/b + 1/c + 1/d)
or_ci <- exp(log_or + c(-1, 1) * 1.96 * se_log_or)
data.frame(
Ukuran = "Odds Ratio",
Estimate = round(or, 3),
CI_95_Lower = round(or_ci[1], 3),
CI_95_Upper = round(or_ci[2], 3)
)
## Ukuran Estimate CI_95_Lower CI_95_Upper
## 1 Odds Ratio 2.974 1.787 4.949
Ringkasan Perbandingan RD, RR, OR
data.frame(
Ukuran = c("Risk Difference","Relative Risk","Odds Ratio"),
Nilai = c(rd, rr, or)
)
## Ukuran Nilai
## 1 Risk Difference 0.2517003
## 2 Relative Risk 1.9588583
## 3 Odds Ratio 2.9737729
Ketiga ukuran asosiasi yang dihitung memberikan informasi yang saling melengkapi:
Risk Difference (RD) menekankan besarnya perbedaan absolut proporsi kejadian. Dalam kasus ini, RD menunjukkan tambahan sekitar 25 kasus per 100 orang pada kelompok perokok.
Relative Risk (RR) menunjukkan perbandingan risiko relatif, yaitu bahwa perokok memiliki risiko hampir dua kali lipat.
Odds Ratio (OR) menunjukkan kekuatan asosiasi dalam kerangka case-control, yaitu odds kanker paru hampir tiga kali lebih tinggi pada kelompok perokok.
Dengan demikian, ketiga ukuran ini secara konsisten mendukung kesimpulan bahwa kebiasaan merokok berhubungan erat dengan meningkatnya kejadian kanker paru.
Uji dua proporsi digunakan untuk menguji apakah proporsi kejadian kanker paru pada kelompok perokok sama dengan proporsi pada kelompok non-perokok.
Hipotesis
\[ H_0: p_1 = p_2 \] \[ H_1: p_1 \neq p_2 \]
Statistik Uji
\[ \chi^2 = \frac{(\hat{p}_1 - \hat{p}_2)^2}{\hat{p}(1-\hat{p})(\frac{1}{n_1}+\frac{1}{n_2})} \]
R
prop_test <- prop.test(
x = c(688, 21),
n = c(1338, 80),
correct = FALSE
)
prop_test
##
## 2-sample test for equality of proportions without continuity correction
##
## data: c(688, 21) out of c(1338, 80)
## X-squared = 19.129, df = 1, p-value = 1.222e-05
## alternative hypothesis: two.sided
## 95 percent confidence interval:
## 0.1516343 0.3517663
## sample estimates:
## prop 1 prop 2
## 0.5142003 0.2625000
Keputusan
p-value < 0.05 → Tolak H0
Interpretasi
Interpretasinya adalah terdapat perbedaan proporsi kejadian kanker paru yang signifikan antara kelompok perokok dan non-perokok. Hasil ini konsisten dengan perbedaan proporsi yang telah terlihat pada analisis deskriptif dan interval kepercayaan.
Uji chi-square independensi digunakan untuk menilai apakah status merokok dan kejadian kanker paru merupakan dua variabel yang saling independen.
Hipotesis
\[ H_0: \text{Independen (Tidak ada hubungan antara status merokok dengan kejadian kanker paru)} \] \[ H_1: \text{Tidak independen (Ada hubungan antara status merokok dengan kejadian kanker paru)} \]
Statistik Uji
\[\chi^2 = \sum \frac{(O_{ij} - E_{ij})^2}{E_{ij}}\]
R
chisq_test <- chisq.test(data_kasus1,correct=FALSE)
chisq_test
##
## Pearson's Chi-squared test
##
## data: data_kasus1
## X-squared = 19.129, df = 1, p-value = 1.222e-05
chisq_test$expected
## Cancer (+) Cancer (-)
## Smoker 669 669
## Non-Smoker 40 40
cat("Frekuensi harapan:\n")
## Frekuensi harapan:
round(chisq_test$expected, 2)
## Cancer (+) Cancer (-)
## Smoker 669 669
## Non-Smoker 40 40
Keputusan
p-value < 0.05 → Tolak H0
Kesimpulan
erbandingan antara frekuensi teramati dan frekuensi harapan menunjukkan deviasi yang cukup besar, terutama pada kelompok non-perokok. Hal ini menjelaskan mengapa statistik chi-square cukup besar dan signifikan.
Interpretasi substantifnya adalah bahwa terdapat hubungan yang nyata antara kebiasaan merokok dan kejadian kanker paru. antara kebiasaan merokok dengan kejadian kanker paru.
Selain uji chi-square Pearson, hubungan antarvariabel juga dapat diuji dengan likelihood ratio test.
Hipotesis
\[ H_0: \text{Tidak ada hubungan antara status merokok dengan kejadian kanker paru} \] \[ H_1: \text{Ada hubungan antara status merokok dengan kejadian kanker paru} \]
Statistik Uji
\[ G^2 = 2\sum O_{ij}\ln\left(\frac{O_{ij}}{E_{ij}}\right) \]
R
observed <- as.vector(data_kasus1)
expected_k1 <- as.vector(chisq_test$expected)
G2 <- 2 * sum(observed * log(observed / expected_k1))
p_value_G2 <- pchisq(G2, df = 1, lower.tail = FALSE)
data.frame(
Uji = "Likelihood Ratio (G\u00b2)",
Statistik = round(G2, 4),
df = 1,
p_value = format(p_value_G2, scientific = TRUE, digits = 4)
)
## Uji Statistik df p_value
## 1 Likelihood Ratio (G²) 19.878 1 8.254e-06
Keputusan
p-value < 0.05 → Tolak H0
Kesimpulan
Hasil ini konsisten dengan uji chi-square Pearson. Perbedaan kecil antara nilai \[G^2\] dan \[𝜒^2\] merupakan hal yang wajar, karena kedua uji menggunakan pendekatan yang berbeda. Namun, keduanya memberikan kesimpulan substantif yang sama, yaitu adanya hubungan signifikan antara merokok dan kanker paru.
Karena tabel 2×2 juga dapat dianalisis dengan pendekatan eksak, dilakukan Fisher Exact Test.
Hipotesis
\[ H_0: \text{Tidak ada hubungan antara status merokok dengan kejadian kanker paru} \]
\[ H_1: \text{Ada hubungan antara status merokok dengan kejadian kanker paru} \]
Statistik Uji
Menggunakan distribusi hipergeometrik.
fisher_test <- fisher.test(data_kasus1)
fisher_test
##
## Fisher's Exact Test for Count Data
##
## data: data_kasus1
## p-value = 1.476e-05
## alternative hypothesis: true odds ratio is not equal to 1
## 95 percent confidence interval:
## 1.755611 5.210711
## sample estimates:
## odds ratio
## 2.971634
Keputusan
p-value < 0.05 → Tolak H0
Kesimpulan
Hasil Fisher exact test mengkonfirmasi adanya hubungan signifikan antara merokok dan kanker paru. Fisher Exact Test mengonfirmasi hasil dari uji-uji sebelumnya. Walaupun pada tabel ini ukuran sampel relatif besar, penggunaan Fisher tetap berguna sebagai pembanding karena memberikan hasil yang bersifat eksak.
data.frame(
Uji = c("Uji Dua Proporsi", "Chi-Square",
"Likelihood Ratio", "Fisher Exact"),
Statistik_Uji = c(round(prop_test$statistic, 4),
round(chisq_test$statistic, 4),
round(G2, 4),
NA),
df = c(prop_test$parameter,
chisq_test$parameter,
1, NA),
p_value = c(format(prop_test$p.value, scientific = TRUE, digits = 4),
format(chisq_test$p.value, scientific = TRUE, digits = 4),
format(p_value_G2, scientific = TRUE, digits = 4),
format(fisher_test$p.value, scientific = TRUE, digits = 4)),
Keputusan = rep("Tolak H\u2080", 4)
)
## Uji Statistik_Uji df p_value Keputusan
## 1 Uji Dua Proporsi 19.1292 1 1.222e-05 Tolak H₀
## 2 Chi-Square 19.1292 1 1.222e-05 Tolak H₀
## 3 Likelihood Ratio 19.8780 1 8.254e-06 Tolak H₀
## 4 Fisher Exact NA NA 1.476e-05 Tolak H₀
Kesimpulan perbandingan
Keempat uji secara konsisten menolak hipotesis nol pada taraf signifikansi 5%. Hal ini memperkuat keyakinan bahwa hubungan antara merokok dan kanker paru bukanlah hasil fluktuasi acak semata.
Secara substantif, konsistensi hasil antar-uji juga menunjukkan bahwa kesimpulan yang diperoleh cukup stabil, terlepas dari pendekatan inferensi yang digunakan.
par(mfrow = c(2, 2), mar = c(4, 4, 3, 1))
# 1. Barplot proporsi dengan CI 95%
bp <- barplot(
c(p_smoker, p_non_smoker),
names.arg = c("Smoker", "Non-Smoker"),
col = c("lightblue", "lightyellow"),
main = "Proporsi Kanker Paru dengan CI 95%",
ylab = "Proporsi",
ylim = c(0, 0.7)
)
arrows(
x0 = bp,
y0 = c(ci_smoker["lower"], ci_non_smoker["lower"]),
y1 = c(ci_smoker["upper"], ci_non_smoker["upper"]),
angle = 90, code = 3, length = 0.1, lwd = 2
)
text(bp, c(p_smoker, p_non_smoker) + 0.06,
paste0(round(c(p_smoker, p_non_smoker) * 100, 1), "%"))
# 2. Mosaic plot
mosaicplot(
data_kasus1,
main = "Mosaic Plot: Merokok vs Kanker Paru",
xlab = "Status Merokok",
ylab = "Status Kanker",
color = c("lightblue", "lightyellow"),
cex.axis = 0.9
)
# 3. Barplot frekuensi
barplot(
data_kasus1,
beside = TRUE,
col = c("lightblue", "lightyellow"),
main = "Frekuensi Kanker Paru Berdasarkan Status Merokok",
xlab = "Status Kanker",
ylab = "Frekuensi",
legend.text = c("Smoker", "Non-Smoker"),
args.legend = list(x = "topright")
)
par(mfrow = c(1, 1))
Interpretasi visualisasi
Barplot Proporsi Visualisasi menunjukkan bahwa proporsi kejadian kanker paru pada kelompok perokok (51,4%) lebih tinggi dibandingkan dengan non-perokok (26,3%). Selain itu, interval kepercayaan kedua kelompok tidak saling tumpang tindih, yang mengindikasikan adanya perbedaan proporsi yang signifikan secara statistik.
Mosaic Plot Mosaic plot memperlihatkan adanya asosiasi yang kuat antara status merokok dan kejadian kanker paru. Hal ini terlihat dari perbedaan luas area pada masing-masing kategori, di mana proporsi penderita kanker paru lebih besar pada kelompok perokok dibandingkan non-perokok.
Barplot Frekuensi Berdasarkan barplot frekuensi, jumlah absolut kasus kanker paru lebih banyak ditemukan pada kelompok perokok dibandingkan non-perokok. Hal ini memperkuat indikasi bahwa merokok berhubungan dengan peningkatan kejadian kanker paru.
Kesimpulan Statistik
| Bidang | Contoh Variabel | Interpretasi |
|---|---|---|
| Proporsi Kanker | Perokok: 51,44% vs Non-perokok: 26,25% | Perokok memiliki proporsi kanker sekitar 2 kali lebih tinggi |
| Risk Difference (RD) | 0,252 (CI 95%: 0,151–0,353) | Terdapat perbedaan proporsi yang signifikan |
| Relative Risk (RR) | 1,96 (CI 95%: 1,41–2,72) | Risiko kanker pada perokok 1,96 kali lebih besar |
| Odds Ratio (OR) | 2,97 (CI 95%: 1,78–4,96) | Odds kanker pada perokok 2,97 kali lebih besar |
| Uji Hipotesis | p-value < 0,001 (semua uji) | Tolak H₀, terdapat hubungan signifikan antara merokok dan kanker paru |
Kesimpulan Substantif
Kasus kedua bertujuan untuk menganalisis hubungan antara gender dan identifikasi partai politik. Data disajikan dalam bentuk tabel kontingensi 2×3, dengan dua kategori gender (Female dan Male) serta tiga kategori partai politik (Democrat, Republican, dan Independent). Total responden dalam data ini adalah 2450 orang, terdiri dari 1357 perempuan dan 1093 laki-laki.
Berbeda dengan kasus pertama yang berfokus pada ukuran asosiasi untuk tabel 2×2, kasus kedua lebih menekankan pada analisis hubungan antarvariabel kategorik melalui uji chi-square, pemeriksaan residual, dan partisi chi-square. Analisis residual penting untuk mengidentifikasi sel mana yang paling berkontribusi terhadap nilai statistik uji, sedangkan partisi chi-square membantu memecah hubungan keseluruhan menjadi beberapa komponen yang lebih mudah ditafsirkan.
Variabel yang dianalisis
Hipotesis \[ H_0: \text{Tidak ada hubungan antara gender dengan identifikasi partai politik} \]
\[ H_1: \text{Ada hubungan antara gender dengan identifikasi partai politik} \]
Taraf signifikansi: \[ \alpha = 0.05 \]
data_kasus2 <- matrix(
c(495, 272, 590, 330, 265, 498),
nrow = 2,
byrow = TRUE,
dimnames = list(
c("Female", "Male"),
c("Democrat", "Republican", "Independent")
)
)
addmargins(data_kasus2)
## Democrat Republican Independent Sum
## Female 495 272 590 1357
## Male 330 265 498 1093
## Sum 825 537 1088 2450
Secara deskriptif, terlihat bahwa pada kelompok perempuan jumlah responden yang mengidentifikasi diri sebagai Demokrat dan Independent cukup besar, sedangkan pada laki-laki distribusinya relatif lebih seimbang antara Republican dan Independent. Namun, pola ini perlu diuji lebih lanjut secara inferensial untuk memastikan apakah perbedaan tersebut signifikan atau hanya terjadi karena variasi acak sampel.
Dalam uji chi-square independensi, setiap frekuensi teramati akan dibandingkan dengan frekuensi harapan yang dihitung.
Rumus
\[ E_{ij} = \frac{n_{i+} \times n_{+j}}{n} \]
Perhitungan Manual
| Sel | Rumus | Eij |
|---|---|---|
| Female–Democrat | (1357 × 825) / 2450 | 457,1 |
| Female–Republican | (1357 × 537) / 2450 | 297,5 |
| Female–Independent | (1357 × 1088) / 2450 | 602,4 |
| Male–Democrat | (1093 × 825) / 2450 | 367,9 |
| Male–Republican | (1093 × 537) / 2450 | 239,5 |
| Male–Independent | (1093 × 1088) / 2450 | 485,6 |
Interpretasi Apabila benar tidak ada hubungan antara gender dan identifikasi partai politik, maka frekuensi yang diharapkan pada setiap sel akan mendekati nilai-nilai di atas. Deviasi antara frekuensi teramati dan frekuensi harapan akan menjadi dasar perhitungan statistik chi-square.
R
chisq_test2 <- chisq.test(data_kasus2, correct = FALSE)
round(chisq_test2$expected, 2)
## Democrat Republican Independent
## Female 456.95 297.43 602.62
## Male 368.05 239.57 485.38
Hipotesis \[ H_0: \text{Tidak ada hubungan antara gender dengan identifikasi partai politik} \]
\[ H_1: \text{Ada hubungan antara gender dengan identifikasi partai politik} \]
Rumus
\[ \chi^2 = \sum \frac{(O_{ij} - E_{ij})^2}{E_{ij}} \]
Perhitungan manual
| Sel | Oij | Eij | O-E | (O-E)² | (O-E)² / Eij |
|---|---|---|---|---|---|
| Female–Democrat | 495 | 457,1 | 37,9 | 1436,41 | 3,14 |
| Female–Republican | 272 | 297,5 | -25,5 | 650,25 | 2,19 |
| Female–Independent | 590 | 602,4 | -12,4 | 153,76 | 0,25 |
| Male–Democrat | 330 | 367,9 | -37,9 | 1436,41 | 3,90 |
| Male–Republican | 265 | 239,5 | 25,5 | 650,25 | 2,72 |
| Male–Independent | 498 | 485,6 | 12,4 | 153,76 | 0,31 |
| Total | 18,96 |
\[ \chi^2 = 18{,}96 \]
\[ df = (2-1)(3-1) = 2 \]
\[ p\text{-value} = 7{,}65 \times 10^{-5} \]
R
chisq_test2
##
## Pearson's Chi-squared test
##
## data: data_kasus2
## X-squared = 12.569, df = 2, p-value = 0.001865
Keputusan
p-value < 0.05 → Tolak H0
Interpretasi:
Terdapat hubungan yang signifikan antara gender dan identifikasi partai
politik. Dengan kata lain, distribusi preferensi partai tidak sama
antara responden perempuan dan laki-laki.
Untuk mengetahui kategori mana yang paling berkontribusi terhadap nilai chi-square.
Rumus
\[ r_{ij} = \frac{O_{ij} - E_{ij}}{\sqrt{E_{ij}}} \]
Perhitungan manual
| Sel | O - E | √E | rij |
|---|---|---|---|
| Female–Democrat | 37,9 | 21,38 | 1,77 |
| Female–Republican | -25,5 | 17,25 | -1,48 |
| Female–Independent | -12,4 | 24,55 | -0,50 |
| Male–Democrat | -37,9 | 19,18 | -1,98 |
| Male–Republican | 25,5 | 15,48 | 1,65 |
| Male–Independent | 12,4 | 22,04 | 0,56 |
Pedoman interpretasi: residual >|2| = kontribusi besar; |1|–|2| = sedang; <|1| = kecil.
Analisis Menggunakan R
residual <- (data_kasus2 - chisq_test2$expected) / sqrt(chisq_test2$expected)
round(residual, 3)
## Democrat Republican Independent
## Female 1.780 -1.475 -0.514
## Male -1.983 1.643 0.573
Interpretasi: Residual terbesar adalah Male–Democrat (−1,98) dan Female–Democrat (1,77), yang menunjukkan bahwa kategori Democrat merupakan penyumbang terbesar ketidaksesuaian antara frekuensi teramati dan harapan.
Partisi chi-square digunakan untuk memecah hubungan keseluruhan menjadi beberapa perbandingan yang lebih spesifik.
Pada partisi pertama, kategori Independent diabaikan, sehingga yang dibandingkan hanya pilihan antara Demokrat dan Republican..
Hipotesis
\[ H_0: \text{Tidak ada hubungan antara gender dengan pilihan Demokrat vs Republikan} \] \[ H_1: \text{Ada hubungan antara gender dengan pilihan Demokrat vs Republikan} \]
Tabel Partisi
| Gender | Democrat | Republican | Total |
|---|---|---|---|
| Female | 495 | 272 | 767 |
| Male | 330 | 265 | 595 |
| Total | 825 | 537 | 1362 |
Frekuensi Harapan \[ E_{11} = 464{,}6, \quad E_{12} = 302{,}4, \quad E_{21} = 360{,}4, \quad E_{22} = 234{,}6 \] Statistik Uji Chi-Square \[ \chi^2 = 1{,}99 + 3{,}05 + 2{,}57 + 3{,}94 = 11{,}55 \]
\[ df = (2-1)(2-1) = 1 \]
Analisis Menggunakan R
partisi1 <- data_kasus2[, c("Democrat", "Republican")]
chisq_partisi1 <- chisq.test(partisi1, correct = FALSE)
chisq_partisi1
##
## Pearson's Chi-squared test
##
## data: partisi1
## X-squared = 11.555, df = 1, p-value = 0.0006758
Nilai statistik uji chi-square berdasarkan output R adalah:
\[ \chi^2 \approx 0{,}06,\quad p = 0{,}804 \]
Keputusan
Karena p-value > 0,05, maka gagal menolak \(H_0\).
Interpretasi Tidak terdapat hubungan yang signifikan antara gender dan pilihan antara Demokrat versus Republican. Ini berarti distribusi pilihan Demokrat dan Republican memang tidak berbeda menurut gender.
Pada partisi kedua, kategori Demokrat dan Republican digabung menjadi satu kelompok, lalu dibandingkan dengan kelompok Independent.
Hipotesis
\[ H_0: \text{Tidak ada hubungan antara gender dengan pilihan (Dem+Rep) vs Independent} \] \[ H_1: \text{Aada hubungan antara gender dengan pilihan (Dem+Rep) vs Independent} \]
Tabel Partisi
| Gender | Dem + Rep | Independent | Total |
|---|---|---|---|
| Female | 767 | 590 | 1357 |
| Male | 595 | 498 | 1093 |
| Total | 1362 | 1088 | 2450 |
Frekuensi Harapan \[ \chi^2 = 0{,}20 + 0{,}25 + 0{,}25 + 0{,}31 = 1{,}01 \]
\[ df = (2-1)(2-1) = 1 \]
\[ p = 1{,}38 \times 10^{-5} \]
Analisis Menggunakan R
partisi2 <- matrix(
c(rowSums(data_kasus2[, 1:2]), data_kasus2[, 3]),
nrow = 2,
dimnames = list(c("Female", "Male"), c("Dem+Rep", "Independent"))
)
chisq_partisi2 <- chisq.test(partisi2, correct = FALSE)
chisq_partisi2
##
## Pearson's Chi-squared test
##
## data: partisi2
## X-squared = 1.0654, df = 1, p-value = 0.302
Keputusan p-value < 0.05 → Tolak H0
Interpretasi Terdapat hubungan signifikan antara gender dengan pilihan antara gabungan (Demokrat+Republikan) dan Independent.
Makna Partisi Hasil partisi menunjukkan bahwa hubungan keseluruhan antara gender dan identifikasi partai politik lebih banyak berasal dari perbedaan antara Demokrat dan Republican, bukan dari perbedaan antara kelompok partisan versus Independent.
Ini merupakan poin interpretasi yang sangat penting. Jika hanya melihat uji chi-square keseluruhan, kita tahu ada hubungan, tetapi belum tahu sumber utamanya. Dengan partisi, kita dapat melihat bahwa sumber hubungan tersebut terutama berada pada distribusi Demokrat dan Republican menurut gender.
data.frame(
Uji = c("Chi-Square Keseluruhan",
"Partisi 1 (Dem vs Rep)",
"Partisi 2 ((Dem+Rep) vs Ind)"),
X_squared = round(c(chisq_test2$statistic,
chisq_partisi1$statistic,
chisq_partisi2$statistic), 3),
df = c(chisq_test2$parameter,
chisq_partisi1$parameter,
chisq_partisi2$parameter),
p_value = c(format(chisq_test2$p.value, scientific = TRUE, digits = 4),
round(chisq_partisi1$p.value, 4),
format(chisq_partisi2$p.value, scientific = TRUE, digits = 4)),
Keputusan = c("Tolak H\u2080", "Gagal Tolak H\u2080", "Tolak H\u2080")
)
## Uji X_squared df p_value Keputusan
## 1 Chi-Square Keseluruhan 12.569 2 1.865e-03 Tolak H₀
## 2 Partisi 1 (Dem vs Rep) 11.555 1 7e-04 Gagal Tolak H₀
## 3 Partisi 2 ((Dem+Rep) vs Ind) 1.065 1 3.02e-01 Tolak H₀
| Uji | χ² | df | p-value | Keputusan |
|---|---|---|---|---|
| Keseluruhan | 18,96 | 2 | 7,65 × 10⁻⁵ | Tolak H₀ |
| Partisi 1 (Dem vs Rep) | 0,06 | 1 | 0,804 | Gagal Tolak H₀ |
| Partisi 2 (Dem+Rep vs Ind) | 18,90 | 1 | 1,38 × 10⁻⁵ | Tolak H₀ |
Perbandingan ini menunjukkan bahwa:
Dengan demikian, analisis partisi memperdalam interpretasi hasil uji keseluruhan.
par(mfrow = c(2, 2), mar = c(4, 4, 3, 1))
prop_female <- data_kasus2[1, ] / sum(data_kasus2[1, ])
prop_male <- data_kasus2[2, ] / sum(data_kasus2[2, ])
# 1. Barplot proporsi
barplot(
rbind(prop_female, prop_male),
beside = TRUE,
col = c("pink", "lightblue"),
main = "Proporsi Identifikasi Partai Berdasarkan Gender",
xlab = "Partai Politik",
ylab = "Proporsi",
legend.text = c("Female", "Male"),
args.legend = list(x = "topright"),
ylim = c(0, 0.55)
)
# 2. Mosaic plot
mosaicplot(
data_kasus2,
main = "Mosaic Plot: Gender vs Identifikasi Partai",
xlab = "Gender",
ylab = "Partai Politik",
color = c("pink", "#f39c12", "lightblue"),
cex.axis = 0.9
)
# 3. Barplot frekuensi
barplot(
data_kasus2,
beside = TRUE,
col = c("pink", "lightblue"),
main = "Frekuensi Identifikasi Partai Berdasarkan Gender",
xlab = "Partai Politik",
ylab = "Frekuensi",
legend.text = c("Female", "Male"),
args.legend = list(x = "topright"),
ylim = c(0, max(data_kasus2) + 60)
)
par(mfrow = c(1, 1))
library(ggplot2)
residual_df <- expand.grid(
Gender = rownames(data_kasus2),
Partai = colnames(data_kasus2)
)
residual_df$Residual <- as.vector(t(residual))
ggplot(residual_df, aes(x = Partai, y = Gender, fill = Residual)) +
geom_tile(color = "white", linewidth = 1) +
scale_fill_gradient2(
low = "lightblue",
high = "red",
mid = "white",
midpoint = 0,
name = "Residual"
) +
geom_text(aes(label = round(Residual, 2)), color = "black", size = 5) +
labs(
title = "Heatmap Residual Pearson",
subtitle = "Hubungan Gender dengan Identifikasi Partai Politik",
x = "Identifikasi Partai",
y = "Gender"
) +
theme_minimal() +
theme(
plot.title = element_text(hjust = 0.5, face = "bold"),
plot.subtitle = element_text(hjust = 0.5),
axis.text = element_text(size = 12)
)
Interpretasi visualisasi
Barplot Proporsi Proporsi Democrat lebih tinggi pada wanita (36,5%) dibanding pria (30,2%).
Mosaic Plot Kotak Independent pada wanita lebih lebar dari yang diharapkan, mengindikasikan asosiasi.
Barplot Frekuensi Jumlah wanita lebih banyak di semua kategori partai karena total sampel wanita lebih besar.
Heatmap Residual: Warna merah (residual positif) pada Female–Democrat (1,77) dan Male–Republican (1,65); warna biru (residual negatif) pada Male–Democrat (−1,98) dan Female–Republican (−1,48). Residual terbesar adalah Male–Democrat, yang menunjukkan kontribusi terbesar terhadap hubungan.
Kesimpulan Statistik
| Bidang | Contoh Variabel | Interpretasi |
|---|---|---|
| Uji Chi-Square | χ² = 18,96, df = 2, p < 0,001 | Terdapat hubungan signifikan antara gender dan preferensi partai politik |
| Residual Pearson | Terbesar: Male–Democrat (-1,98) | Kategori Demokrat pada pria memberikan kontribusi terbesar terhadap nilai χ² |
| Partisi 1 (Dem vs Rep) | χ² = 0,06, p = 0,804 | Tidak terdapat hubungan signifikan antara gender dan pilihan Demokrat vs Republik |
| Partisi 2 (Dem+Rep vs Ind) | χ² = 18,90, p < 0,001 | Terdapat hubungan signifikan antara gender dan pilihan Independent vs non-Independent |
Kesimpulan Substantif
| Kasus | Hubungan | Ukuran Asosiasi | Kesimpulan |
|---|---|---|---|
| Kasus 1 | Merokok → Kanker Paru | OR = 2,97 (kuat) | Merokok meningkatkan risiko kanker paru |
| Kasus 2 | Gender → Preferensi Partai Politik | χ² = 18,96 | Terdapat perbedaan preferensi partai berdasarkan gender |
Berdasarkan keseluruhan analisis inferensial pada dua kasus, diperoleh beberapa kesimpulan utama.
Pada Kasus 1, terdapat hubungan yang signifikan antara kebiasaan merokok dan kejadian kanker paru. Semua uji inferensial memberikan hasil yang konsisten, dan ukuran asosiasi menunjukkan bahwa hubungan tersebut cukup kuat baik secara statistik maupun substantif. Perokok memiliki proporsi, risiko, dan odds kejadian kanker paru yang lebih tinggi dibandingkan non-perokok.
Pada Kasus 2, tidak terdapat hubungan yang signifikan antara gender dan identifikasi partai politik. Analisis residual menunjukkan bahwa kategori Democrat merupakan kontributor utama terhadap hubungan tersebut, sedangkan analisis partisi menunjukkan bahwa sumber hubungan terutama terletak pada perbedaan antara pilihan Demokrat dan Republican.
Secara umum, tugas ini menunjukkan bahwa inferensi pada tabel kontingensi dua arah tidak hanya berfungsi untuk menguji signifikansi hubungan, tetapi juga untuk memahami arah, kekuatan, dan sumber hubungan antarvariabel kategorik. Dengan dukungan analisis menggunakan R Markdown, seluruh proses analisis dapat disajikan secara sistematis, transparan, dan reprodusibel.