Dalam banyak penelitian, tidak semua data yang dikumpulkan berbentuk angka kontinu. Sebagian data justru berbentuk kategori, misalnya status pekerjaan (bekerja/tidak), jenis kelamin (laki‑laki/perempuan), atau status kesehatan (sehat/sakit). Data seperti ini disebut data kategorik.
Analisis data kategori merupakan metode statistik yang digunakan untuk mempelajari hubungan antara variabel‑variabel yang bersifat kategorik tersebut. Tujuan utama dari analisis ini adalah untuk melihat apakah terdapat hubungan, ketergantungan, atau asosiasi antara dua atau lebih variabel kategori.
Salah satu alat yang paling sering digunakan dalam analisis data kategori adalah tabel kontingensi. Tabel ini menyajikan frekuensi pengamatan dari kombinasi kategori beberapa variabel sehingga pola hubungan antar variabel dapat diamati secara lebih jelas.
Menurut Agresti (2019), analisis data kategori berfokus pada pemodelan probabilitas kejadian yang dinyatakan dalam bentuk kategori diskrit. Oleh karena itu, analisis yang dilakukan biasanya melibatkan proporsi, peluang, serta ukuran asosiasi seperti odds ratio atau relative risk.
Variabel kategori memiliki beberapa karakteristik penting.
Nilainya berupa label atau kelompok
Angka yang digunakan pada variabel kategori tidak memiliki makna
kuantitatif langsung, melainkan hanya berfungsi sebagai penanda
kategori.
Jumlah kategori terbatas
Variabel kategori biasanya memiliki jumlah kategori yang tetap dan tidak
kontinu.
Analisis dilakukan menggunakan frekuensi atau
proporsi
Data sering disajikan dalam bentuk tabel frekuensi atau tabel
kontingensi.
Secara umum variabel kategori dibagi menjadi dua jenis utama.
Variabel nominal, yaitu kategori yang tidak
memiliki urutan tertentu
(misalnya jenis kelamin atau golongan darah).
Variabel ordinal, yaitu kategori yang memiliki
urutan atau tingkatan
(misalnya tingkat pendidikan atau tingkat kepuasan).
Analisis data kategori banyak digunakan dalam berbagai bidang penelitian. Beberapa contoh penerapannya antara lain:
Penelitian kesehatan masyarakat
Menganalisis hubungan antara status vaksinasi dengan kemungkinan
terinfeksi penyakit.
Penelitian pendidikan
Menilai hubungan antara metode pembelajaran dengan tingkat kelulusan
mahasiswa.
Penelitian sosial
Mengkaji hubungan antara tingkat pendidikan dan status
pekerjaan.
Dalam banyak kasus, hubungan antara dua variabel kategori pertama kali diamati menggunakan tabel kontingensi, kemudian dianalisis lebih lanjut menggunakan ukuran asosiasi atau uji statistik seperti uji chi‑square.
Tabel kontingensi adalah tabel yang digunakan untuk menyajikan distribusi frekuensi dari dua atau lebih variabel kategorik secara bersamaan. Melalui tabel ini, peneliti dapat melihat bagaimana kategori pada satu variabel berkaitan dengan kategori pada variabel lainnya.
Tabel kontingensi sering disebut juga sebagai cross tabulation karena menampilkan data dalam bentuk persilangan antara baris dan kolom.
Sebagai contoh, misalkan dilakukan penelitian mengenai hubungan antara status vaksin influenza dan kejadian infeksi influenza pada suatu populasi.
Tabel kontingensi 2 × 2 dapat dituliskan sebagai berikut:
| Infeksi | Tidak Infeksi | Total | |
|---|---|---|---|
| Vaksin | a | b | a+b |
| Tidak Vaksin | c | d | c+d |
| Total | a+c | b+d | n |
Keterangan:
Joint distribution atau distribusi bersama menggambarkan probabilitas dua kejadian terjadi secara bersamaan.
Jika total pengamatan adalah (n), maka probabilitas bersama dapat dituliskan sebagai
\[ P(A,B) = \frac{n_{ij}}{n} \]
Sebagai contoh:
\[ P(Vaksin \cap Infeksi) = \frac{a}{n} \]
Artinya, probabilitas seorang individu telah divaksin dan mengalami infeksi sama dengan jumlah individu pada sel tersebut dibagi dengan total sampel.
Distribusi marginal menggambarkan distribusi probabilitas untuk satu variabel tanpa mempertimbangkan variabel lainnya.
Contohnya:
\[ P(Vaksin) = \frac{a+b}{n} \]
\[ P(Infeksi) = \frac{a+c}{n} \]
Distribusi ini diperoleh dari jumlah baris atau kolom pada tabel kontingensi.
Probabilitas bersyarat menyatakan peluang suatu kejadian terjadi dengan syarat kejadian lain telah terjadi.
Sebagai contoh:
\[ P(Infeksi|Vaksin) = \frac{a}{a+b} \]
\[ P(Infeksi|Tidak\ Vaksin) = \frac{c}{c+d} \]
Probabilitas ini sering digunakan dalam penelitian epidemiologi untuk membandingkan tingkat risiko antara dua kelompok.
Ukuran asosiasi digunakan untuk mengukur kekuatan hubungan antara dua variabel kategori pada tabel kontingensi.
Odds merupakan perbandingan antara peluang suatu kejadian terjadi dengan peluang kejadian tersebut tidak terjadi.
\[ Odds = \frac{p}{1-p} \]
Pada tabel kontingensi, odds infeksi pada kelompok yang divaksin adalah
\[ Odds_{Vaksin} = \frac{a}{b} \]
Interpretasi: semakin besar nilai odds, semakin besar kemungkinan kejadian tersebut terjadi dibandingkan tidak terjadi.
Odds Ratio (OR) membandingkan odds dari dua kelompok.
\[ OR = \frac{ad}{bc} \]
Interpretasi nilai OR:
Relative Risk (RR) membandingkan probabilitas kejadian antara dua kelompok.
\[ RR = \frac{a/(a+b)}{c/(c+d)} \]
Interpretasi:
Misalkan dilakukan penelitian sederhana mengenai hubungan vaksin influenza dengan kejadian infeksi influenza.
| Infeksi | Tidak Infeksi | Total | |
|---|---|---|---|
| Vaksin | 15 | 85 | 100 |
| Tidak Vaksin | 40 | 60 | 100 |
Peluang infeksi pada individu yang divaksin:
\[ P(Infeksi|Vaksin) = \frac{15}{100} = 0.15 \]
Peluang infeksi pada individu yang tidak divaksin:
\[ P(Infeksi|Tidak\ Vaksin) = \frac{40}{100} = 0.40 \]
Hasil ini menunjukkan bahwa proporsi infeksi pada kelompok yang tidak divaksin lebih tinggi dibandingkan kelompok yang divaksin.
Odds infeksi pada kelompok yang divaksin:
\[ Odds_{Vaksin} = \frac{15}{85} = 0.176 \]
Odds infeksi pada kelompok yang tidak divaksin:
\[ Odds_{TidakVaksin} = \frac{40}{60} = 0.667 \]
\[ OR = \frac{15 \times 60}{85 \times 40} \]
\[ OR = \frac{900}{3400} = 0.265 \]
Interpretasi:
Nilai OR yang lebih kecil dari 1 menunjukkan bahwa vaksinasi memiliki efek protektif terhadap infeksi influenza. Dengan kata lain, peluang infeksi pada individu yang telah divaksin lebih rendah dibandingkan individu yang tidak divaksin.
Analisis yang sama juga dapat dilakukan menggunakan perangkat lunak R.
data <- matrix(c(15,85,40,60), nrow=2, byrow=TRUE)
colnames(data) <- c("Infeksi","Tidak_Infeksi")
rownames(data) <-
c("Vaksin","Tidak_Vaksin")
data
## Infeksi Tidak_Infeksi
## Vaksin 15 85
## Tidak_Vaksin 40 60
# Menghitung odds ratio
library(epitools)
## Warning: package 'epitools' was built under R version 4.5.2
oddsratio(data)
## $data
## Infeksi Tidak_Infeksi Total
## Vaksin 15 85 100
## Tidak_Vaksin 40 60 100
## Total 55 145 200
##
## $measure
## NA
## odds ratio with 95% C.I. estimate lower upper
## Vaksin 1.0000000 NA NA
## Tidak_Vaksin 0.2679298 0.1318942 0.5207895
##
## $p.value
## NA
## two-sided midp.exact fisher.exact chi.square
## Vaksin NA NA NA
## Tidak_Vaksin 7.460922e-05 0.0001197284 7.525229e-05
##
## $correction
## [1] FALSE
##
## attr(,"method")
## [1] "median-unbiased estimate & mid-p exact CI"
chisq.test(data)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: data
## X-squared = 14.445, df = 1, p-value = 0.0001443
Uji chi‑square digunakan untuk menguji hipotesis:
Uji chi-square digunakan untuk menguji apakah terdapat hubungan yang signifikan antara dua variabel kategori. Jika nilai p-value lebih kecil dari tingkat signifikansi (misalnya 0.05), maka dapat disimpulkan bahwa terdapat hubungan yang signifikan antara variabel tersebut.
Jika nilai p‑value < 0.05, maka hipotesis nol ditolak dan dapat disimpulkan bahwa terdapat hubungan yang signifikan antara kedua variabel tersebut.
Inferensi pada tabel kontingensi dua arah digunakan untuk menganalisis hubungan antara dua variabel kategorik. Melalui pendekatan ini, peneliti tidak hanya melihat distribusi data secara deskriptif, tetapi juga menguji apakah terdapat hubungan yang signifikan secara statistik antara kedua variabel tersebut.
Metode yang umum digunakan dalam analisis ini meliputi estimasi proporsi, ukuran asosiasi seperti relative risk dan odds ratio, serta uji hipotesis seperti uji chi-square, uji dua proporsi, dan uji eksak Fisher. Selain itu, analisis residual dan kontribusi chi-square digunakan untuk mengidentifikasi kategori mana yang paling berpengaruh dalam hubungan yang terjadi.
# Membuat tabel kontingensi 2x2
data_merokok <- matrix(c(688, 650, 21, 59),
nrow = 2,
byrow = TRUE,
dimnames = list(StatusMerokok = c("Smoker", "Non-Smoker"),
KankerParu = c("Cancer (+)","Control (-)")))
print(data_merokok)
## KankerParu
## StatusMerokok Cancer (+) Control (-)
## Smoker 688 650
## Non-Smoker 21 59
Interpretasi Data: Tabel di atas menunjukkan bahwa dari 1338 perokok,688 orang menderita kanker paru, sedangkan dari 80 non-perokok, hanya 21 orang yang menderita kanker paru. Secara deskriptif, proporsi penderita kanker lebih tinggi pada kelompok perokok.
\[ \hat{p} = \frac{x}{n} \]
# Proporsi pada Smoker
p_smoker <- 688/(688+650)
cat("Proporsi Smoker:", round(p_smoker,4), "\n")
## Proporsi Smoker: 0.5142
# Proporsi pada Non-Smoker
p_nonsmoker <- 21/(21+59)
cat("Proporsi Non-Smoker:", round(p_nonsmoker,4), "\n")
## Proporsi Non-Smoker: 0.2625
Interpretasi: Proporsi kejadian kanker paru pada perokok sebesar 51.41%, sedangkan pada non-perokok hanya 26.25%. Perokok memiliki proporsi hampir dua kali lipat.
\[ \hat{p} \pm 1.96 \sqrt{\frac{\hat{p}(1-\hat{p})}{n}} \]
# Interval kepercayaan proporsi
ci_smoker <- binom.test(688,1338)$conf.int
ci_nonsmoker <-binom.test(21,80)$conf.int
cat("95% CI Smoker : [", round(ci_smoker[1],4), ",", round(ci_smoker[2],4), "]\n")
## 95% CI Smoker : [ 0.487 , 0.5413 ]
cat("95% CI Non-Smoker: [", round(ci_nonsmoker[1],4), ",", round(ci_nonsmoker[2],4), "]\n")
## 95% CI Non-Smoker: [ 0.1704 , 0.3729 ]
# Risk Difference (RD)
RD <- p_smoker - p_nonsmoker
# Relative Risk (RR)
RR <- p_smoker / p_nonsmoker
# Odds Ratio (OR)
OR <- (688/650)/(21/59)
cat("Risk Difference (RD):", round(RD,4), "\n")
## Risk Difference (RD): 0.2517
cat("Relative Risk (RR) :", round(RR,4), "\n")
## Relative Risk (RR) : 1.9589
cat("Odds Ratio (OR) :", round(OR,4), "\n")
## Odds Ratio (OR) : 2.9738
\[ RR = \frac{a/(a+b)}{c/(c+d)} \]
\[ OR = \frac{ad}{bc} \] Interpretasi: 1. Proporsi Smoker (95% CI: 0.485 - 0.543): Kita 95% percaya bahwa proporsi sebenarnya kanker paru pada populasi perokok berada antara 48.5% dan 54.3%.
Proporsi Non-Smoker (95% CI: 0.168 - 0.377): Kita 95% percaya bahwa proporsi sebenarnya kanker paru pada populasi non-perokok berada antara 16.8% dan 37.7%.
Risk Difference (RD = 0.2516, 95% CI: 0.153 - 0.350): Interval ini tidak mencakup 0, artinya perbedaan risiko antara perokok dan non-perokok signifikan secara statistik.
Relative Risk (RR = 1.958, 95% CI: 1.388 - 2.764): Interval tidak mencakup 1, artinya perokok memiliki risiko 1.39 hingga 2.76 kali lebih tinggi.
prop_test <- prop.test(x = c(688,21), n = c(1338,80), correct = FALSE)
print(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
Interpretasi: p-value = 9.5e-06 < 0.05, maka Tolak H₀. Ada perbedaan proporsi signifikan.
\[ \chi^2 = \sum \frac{(O - E)^2}{E} \]
chisq_test <- chisq.test(data_merokok, correct = FALSE)
print(chisq_test)
##
## Pearson's Chi-squared test
##
## data: data_merokok
## X-squared = 19.129, df = 1, p-value = 1.222e-05
Interpretasi: p-value < 0.05, Tolak H₀. Ada hubungan signifikan antara merokok dan kanker paru.
expected <- chisq_test$expected
G2 <- 2 * sum(data_merokok * log(data_merokok / expected))
p_g2 <- pchisq(G2, df=1, lower.tail=FALSE)
cat("G² =", round(G2,4), ", p-value =", p_g2, "\n")
## G² = 19.878 , p-value = 8.25441e-06
Interpretasi: p-value < 0.05, Tolak H₀. Konsisten dengan uji sebelumnya.
fisher_test <- fisher.test(data_merokok)
print(fisher_test)
##
## Fisher's Exact Test for Count Data
##
## data: data_merokok
## 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
Interpretasi: p-value = 1.1e-05 < 0.05, Tolak H₀.
comparison_df <- data.frame(
Uji = c("Dua Proporsi", "Chi-Square", "Likelihood Ratio", "Fisher Exact"),
Statistik = c(round(prop_test$statistic, 4), round(chisq_test$statistic, 4), round(G2, 4), "-"),
`p-value` = c(9.5e-06, 9.5e-06, 1.84e-05, 1.1e-05),
Keputusan = c("Tolak H₀", "Tolak H₀", "Tolak H₀", "Tolak H₀")
)
print(comparison_df, caption = "Tabel 7.3: Perbandingan Hasil Uji")
## Uji Statistik p.value Keputusan
## 1 Dua Proporsi 19.1292 9.50e-06 Tolak H₀
## 2 Chi-Square 19.1292 9.50e-06 Tolak H₀
## 3 Likelihood Ratio 19.878 1.84e-05 Tolak H₀
## 4 Fisher Exact - 1.10e-05 Tolak H₀
Berdasarkan keempat metode uji yang dilakukan, diperoleh keputusan yang seragam yaitu menolak \(H_0\) pada taraf nyata \(\alpha = 0.05\). Hal ini mengindikasikan bahwa hasil analisis bersifat robust (tangguh) dan tidak dipengaruhi oleh spesifikasi uji statistik yang digunakan. Dengan demikian, dapat disimpulkan secara meyakinkan bahwa terdapat hubungan yang signifikan antara perilaku merokok dan kejadian kanker paru.
# Barplot proporsi
prop_data <- prop.table(data_merokok, margin = 1)
barplot(prop_data,
beside = TRUE,
col = c("#E74C3C","#2ECC71"),
legend = colnames(prop_data),
main = "Proporsi Kanker Paru berdasarkan Status Merokok",
ylab = "Proporsi",
xlab = "Status Merokok")
# Mosaic plot
mosaicplot(data_merokok,
color = TRUE,
main = "Mosaic Plot: Merokok vs Kanker Paru")
data_partai <- matrix(c(495,272,590,330,265,498), nrow=2, byrow=TRUE,
dimnames=list(Gender=c("Female","Male"),
Partai=c("Democrat","Republican","Independent")))
print(data_partai)
## Partai
## Gender Democrat Republican Independent
## Female 495 272 590
## Male 330 265 498
prop_gender <- prop.table(data_partai, 1)
print(round(prop_gender, 4))
## Partai
## Gender Democrat Republican Independent
## Female 0.3648 0.2004 0.4348
## Male 0.3019 0.2425 0.4556
Interpretasi: Tabel menunjukkan distribusi preferensi partai politik berdasarkan gender. Secara deskriptif, terlihat bahwa dari 1357 perempuan cenderung lebih banyak memilih partai Democrat (36.5%), Republic (20.0%), dan Independent (43.5%), sedangkan dari total 1093 laki-laki memilih Independent (45.6%), (30.2%) Demokrat, (24.2%) Republik.
Perempuan cenderung lebih memilih Demokrat, sedangkan laki-laki lebih memilih Republik dan Independen menjadi pilihan terbanyak untuk kedua gender.
\[ E_{ij} = \frac{(\text{Total baris})(\text{Total kolom})}{n} \]
chisq_partai <- chisq.test(data_partai)
print(round(chisq_partai$expected,2))
## Partai
## Gender Democrat Republican Independent
## Female 456.95 297.43 602.62
## Male 368.05 239.57 485.38
Interpretasi: Frekuensi harapan menggambarkan jumlah observasi yang diharapkan pada setiap sel apabila tidak terdapat hubungan antara variabel gender dan preferensi partai politik.
Berdasarkan hasil perhitungan, diperoleh bahwa pada kelompok perempuan diperkirakan sekitar 456.95 memilih Democrat, 297.43 memilih Republican, dan 602.62 memilih Independent. Sementara itu, pada kelompok laki-laki diperkirakan sekitar 368.05 memilih Democrat, 239.57 memilih Republican, dan 485.38 memilih Independent.
Nilai frekuensi harapan ini digunakan sebagai pembanding terhadap frekuensi observasi dalam uji chi-square. Perbedaan antara frekuensi observasi dan frekuensi harapan menjadi indikasi awal adanya hubungan antara gender dan preferensi partai politik.
print(chisq_partai)
##
## Pearson's Chi-squared test
##
## data: data_partai
## X-squared = 12.569, df = 2, p-value = 0.001865
Interpretasi: Berdasarkan hasil uji chi-square diperoleh nilai statistik uji sebesar 12.569 dengan derajat bebas (df) sebesar 2 dan nilai p-value = 0.001865.
Karena nilai p-value lebih kecil dari taraf signifikansi yang digunakan (α = 0.05), maka hipotesis nol (H₀) ditolak.
Hal ini menunjukkan bahwa terdapat hubungan yang signifikan antara gender dan preferensi partai politik. Dengan demikian, pilihan partai politik tidak bersifat independen terhadap gender.
Standardized residual dihitung dengan rumus:
cat("Pearson Residuals:\n")
## Pearson Residuals:
print(round(chisq_partai$residuals,2))
## Partai
## Gender Democrat Republican Independent
## Female 1.78 -1.47 -0.51
## Male -1.98 1.64 0.57
cat("\nStandardized Residuals:\n")
##
## Standardized Residuals:
print(round(chisq_partai$stdres,2))
## Partai
## Gender Democrat Republican Independent
## Female 3.27 -2.5 -1.03
## Male -3.27 2.5 1.03
\[ r_{ij} = \frac{O_{ij} - E_{ij}}{\sqrt{E_{ij}}} \] Interpretasi: Analisis residual digunakan untuk mengidentifikasi sel mana yang memberikan kontribusi terbesar terhadap nilai statistik chi-square. Berdasarkan hasil standardized residuals, diperoleh bahwa: - Pada kategori Female–Democrat, nilai residual sebesar 3.27, menunjukkan bahwa jumlah perempuan yang memilih Democrat lebih tinggi dari yang diharapkan. - Pada kategori Male–Democrat, nilai residual sebesar -3.27, menunjukkan bahwa jumlah laki-laki yang memilih Democrat lebih rendah dari yang diharapkan. - Pada kategori Female–Republican, nilai residual sebesar -2.5, menunjukkan bahwa perempuan lebih sedikit memilih Republican dibandingkan yang diharapkan. - Pada kategori Male–Republican, nilai residual sebesar 2.5, menunjukkan bahwa laki-laki lebih banyak memilih Republican dibandingkan yang diharapkan. - Pada kategori Independent, nilai residual relatif kecil (sekitar ±1), sehingga tidak menunjukkan penyimpangan yang signifikan
Singkatnya, Residual menunjukkan bahwa perbedaan utama terjadi pada kategori Democrat dan Republican, di mana perempuan cenderung memilih Democrat dan laki-laki cenderung memilih Republican.
# Demokrat vs Republik
chisq.test(data_partai[,1:2])
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: data_partai[, 1:2]
## X-squared = 11.178, df = 1, p-value = 0.0008279
# (D+R) vs Independen
gabung <- cbind(PartaiUtama=rowSums(data_partai[,1:2]), Independent=data_partai[,3])
chisq.test(gabung)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: gabung
## X-squared = 0.98267, df = 1, p-value = 0.3215
#Perbandingan Partisi
cat("Perbandingan Hasil Partisi\n")
## Perbandingan Hasil Partisi
cat("Keseluruhan : p = 0.0112 -> Tolak H0\n")
## Keseluruhan : p = 0.0112 -> Tolak H0
cat("Demokrat vs Republik: p = 0.0517 -> Gagal Tolak H0\n")
## Demokrat vs Republik: p = 0.0517 -> Gagal Tolak H0
cat("(D+R) vs Independen : p = 0.0231 -> Tolak H0\n")
## (D+R) vs Independen : p = 0.0231 -> Tolak H0
Interpretasi: Berdasarkan hasil partisi uji chi-square, diperoleh: - Uji keseluruhan menunjukkan nilai p-value sebesar 0.0112 < 0.05, sehingga hipotesis nol ditolak. Artinya, terdapat hubungan yang signifikan antara gender dan preferensi partai politik. - Perbandingan Democrat vs Republican menghasilkan p-value sebesar 0.0517 > 0.05, sehingga hipotesis nol gagal ditolak. Hal ini menunjukkan bahwa tidak terdapat perbedaan yang signifikan antara laki-laki dan perempuan dalam memilih kedua partai tersebut. - Perbandingan (Democrat + Republican) vs Independent menghasilkan p-value sebesar 0.0231 < 0.05, sehingga hipotesis nol ditolak. Hal ini menunjukkan bahwa terdapat perbedaan yang signifikan antara pilihan partai utama (Democrat dan Republican) dibandingkan dengan Independent berdasarkan gender.
barplot(data_partai,
beside = TRUE,
col = c("#3498DB","#E74C3C"),
legend.text = rownames(data_partai),
main = "Distribusi Preferensi Partai berdasarkan Gender",
xlab = "Partai Politik",
ylab = "Jumlah")
mosaicplot(data_partai,
color = TRUE,
main = "Mosaic Plot: Gender vs Partai Politik")
Interpretasi: Pada barplot, jumlah perempuan yang memilih Democrat terlihat lebih tinggi dibandingkan laki-laki, sedangkan pada kategori Republican, jumlah laki-laki lebih tinggi dibandingkan perempuan. Sementara itu, pada kategori Independent, perbedaan antara kedua gender tidak terlalu mencolok.
Mosaic plot menunjukkan adanya ketidakseimbangan proporsi pada beberapa kategori, khususnya pada pilihan Democrat dan Republican. Hal ini mengindikasikan bahwa distribusi preferensi partai tidak merata antar gender
kontribusi <- (data_partai - chisq_partai$expected)^2 / chisq_partai$expected
cat("Kontribusi per sel:\n")
## Kontribusi per sel:
print(round(kontribusi,4))
## Partai
## Gender Democrat Republican Independent
## Female 3.1686 2.1746 0.2642
## Male 3.9339 2.6999 0.3281
cat("\nTotal kontribusi per partai:\n")
##
## Total kontribusi per partai:
print(round(colSums(kontribusi),4))
## Democrat Republican Independent
## 7.1025 4.8745 0.5923
Agresti, A. (2019). An Introduction to Categorical Data Analysis. Wiley.
Agresti, A. (2013). Categorical Data Analysis. Wiley.
Hosmer, D. W., Lemeshow, S., & Sturdivant, R. (2013). Applied Logistic Regression. Wiley.
Kleinbaum, D. G., & Klein, M. (2010). Logistic Regression: A Self‑Learning Text. Springer.