Seorang peneliti ingin melakukan riset mengenai ada tidaknya hubungan antara kebiasaan merokok dengan kanker paru -paru. Ia berhipotesis bahwa terdapat hubungan antara kebiasaan merokok dengan kanker paru -paru. Untuk membuktikan hal tersebut, ia melakukan sampling. Adapun, sampel yang diperoleh tersaji pada tabel berikut:
| Status Merokok | Cancer (+) | Control (-) | Total |
|---|---|---|---|
| Smoker | 688 | 650 | 1338 |
| Non-Smoker | 21 | 59 | 80 |
| Total | 709 | 709 | 1418 |
Proporsi kejadian kanker paru (\(\hat{p}\)) pada masing-masing kelompok dihitung dengan rumus:
\[ \hat{p}=\frac{x}{n} \]
n_smoker <- 688 + 650
n_nonsmoker <- 21 + 59
p_smoker <- 688 / n_smoker
p_nonsmoker <- 21 / n_nonsmoker
cat("Proporsi Kanker pada Smoker :", round(p_smoker, 4), "\n")## Proporsi Kanker pada Smoker : 0.5142
## Proporsi Kanker pada Non-Smoker: 0.2625
Interval kepercayaan untuk proporsi kanker paru (\(\hat{p}\)) pada masing - masing kelompok, dapat dihitung menggunakan rumus berikut:
\[ \hat{p}\pm Z_{\frac{\alpha}{2}}\sqrt{\frac{\hat{p}(1-\hat{p})}{n}} \]
## Warning: package 'epitools' was built under R version 4.5.2
data_matrix <- matrix(c(688,21,650,59), nrow=2, byrow=TRUE)
# Menggunakan epitools untuk RR dan OR yang akurat
# Note: Urutan kolom harus Cancer(+), Control(-)
res_or <- oddsratio(data_matrix, method = "wald")
res_rr <- riskratio(data_matrix, method = "wald")
# RD (Manual dengan prop.test)
res_rd <- prop.test(x = c(688, 21), n = c(1338, 80))
# Menampilkan ringkasan CI
cat("95% CI untuk RD:", res_rd$conf.int[1], "sampai", res_rd$conf.int[2], "\n")## 95% CI untuk RD: 0.1450106 sampai 0.35839
## 95% CI untuk RR: 1.726305 sampai 4.572438
## 95% CI untuk OR: 1.786737 sampai 4.949427
Untuk menguji hipotesis bahwa tidak ada perbedaan proporsi antara dua kelompok, kita menggunakan uji z dua proporsi, dengan hipotesis:
Hipotesis Nol (\(H_0\)): Tidak ada perbedaan proporsi antara dua kelompok, yaitu \(p_1=p_2\)
Hipotesis Alternatif (\(H_1\)): Terdapat perbedaan proporsi antara dua kelompok, yaitu \(p_1≠p_2\)
Estimasi proporsi dalam masing-masing kelompok diberikan oleh:
\[\hat{p}_1=\frac{n_{11}}{n_{1.}},\hspace{0.1cm} \hat{p}_2=\frac{n_{21}}{n_{2.}}\]
Estimasi proporsi gabungan (pooling proportion):
\[ \hat{p}=\frac{n_{11}+n_{21}}{n_{1.}+n_{2.}} \]
Statistik uji untuk uji proporsi dua sampel:
\[ Z=\frac{\hat{p}_1-\hat{p}_2}{\sqrt{\hat{p}(1-\hat{p})(\frac{1}{n_{1.}}+\frac{1}{n_{2.}})}} \]
n_smoker <- 688 + 650
n_nonsmoker <- 21 + 59
p_smoker <- 688 / n_smoker
p_nonsmoker <- 21 / n_nonsmoker
p_biasa <- (688+21)/(n_smoker+n_nonsmoker)
Z = (p_smoker-p_nonsmoker)/(sqrt(p_biasa*(1-p_biasa)*(1/n_smoker+1/n_nonsmoker)))
if (Z<=1.96) {
print("Tidak ada perbedaan proporsi antara dua kelompok")
} else {
print("Terdapat perbedaan proporsi antara dua kelompok")
}## [1] "Terdapat perbedaan proporsi antara dua kelompok"
Uji Chi-Square digunakan untuk menguji apakah ada hubungan antara dua variabel kategorikal. Adapun, hipotesis untuk pengujian ini sebagai berikut:
Hipotesis Nol (\(H_0\)): Tidak terdapat hubungan antara kebiasaan merokok dan kanker paru - paru
Hipotesis Alternatif (\(H_1\)): Terdapat hubungan antara kebiasaan merokok dan kanker paru - paru
Rumus Chi-Square:
\[ \chi^2=\sum\frac{(O-E)^2}{E} \]
dimana:
O adalah nilai observasi dalam tabel kontingensi.
E adalah nilai yang diharapkan, dihitung sebagai:
\[ E_{ij}=\frac{R_i\times C_j}{N} \]
dengan
\(R_i\) = total baris ke-i.
\(C_j\) = total kolom ke-j.
\(N\) = total sampel.
data_matrix <- matrix(c(688,21,650,59), nrow=2, byrow=TRUE)
chi <- chisq.test(data_matrix)
if (chi$p.value < 0.05) {
print("Terdapat hubungan antara kebiasaan merokok dan kanker paru - paru")
} else {
print("Tidak terdapat hubungan antara kebiasaan merokok dan kanker paru - paru")
}## [1] "Terdapat hubungan antara kebiasaan merokok dan kanker paru - paru"
Uji Likelihood Ratio (G²) adalah alternatif dari uji chi-square yang digunakan untuk menguji hipotesis independensi dalam tabel kontingensi I × J. Adapun, hipotesis untuk pengujian ini sebagai berikut:
Hipotesis Nol (\(H_0\)): Tidak terdapat hubungan antara kebiasaan merokok dan kanker paru - paru
Hipotesis Alternatif (\(H_1\)): Terdapat hubungan antara kebiasaan merokok dan kanker paru - paru
Statistik uji ini diberikan oleh:
\[ G^2=2\sum_i\sum_j n_{ij} \hspace{0.1cm}ln(\frac{n_{ij}}{\hat{\mu}_{ij}}) \]
dengan:
\(n_{ij}\) adalah frekuensi observasi dalam tabel kontingensi.
\(\hat{\mu}_{ij}\) adalah frekuensi ekspektasi
library(DescTools)
# Contoh tabel
data_matrix <- matrix(c(688,21,650,59), nrow=2, byrow=TRUE)
# LR test (G-test)
G2 <- GTest(data_matrix)
if (G2$p.value < 0.05) {
print("Terdapat hubungan antara kebiasaan merokok dan kanker paru - paru")
} else {
print("Tidak terdapat hubungan antara kebiasaan merokok dan kanker paru - paru")
}## [1] "Terdapat hubungan antara kebiasaan merokok dan kanker paru - paru"
Fisher Exact Test digunakan untuk menguji hubungan antara dua variabel kategorikal dalam tabel kontingensi kecil, dimana asumsi Chi-square tidak berlaku karena ukuran sampel yang kecil. Adapun, hipotesis untuk pengujian ini sebagai berikut:
Hipotesis Nol (\(H_0\)): Tidak terdapat hubungan antara kebiasaan merokok dan kanker paru - paru
Hipotesis Alternatif (\(H_1\)): Terdapat hubungan antara kebiasaan merokok dan kanker paru - paru
\[ P(X=x)=\frac{\binom{K}{x}\binom{N-K}{n-x}}{\binom{N}{n}} \]
dengan:
N = total objek dalam populasi
K = jumlah objek dalam kategori tertentu (misalnya, sukses)
n = jumlah sampel yang diambil
x = jumlah objek dalam kategori tertentu yang diamati dalam sampel
data_matrix <- matrix(c(688,21,650,59), nrow=2, byrow=TRUE)
fisher <- fisher.test(data_matrix)
if (fisher$p.value < 0.05) {
print("Terdapat hubungan antara kebiasaan merokok dan kanker paru - paru")
} else {
print("Tidak terdapat hubungan antara kebiasaan merokok dan kanker paru - paru")
}## [1] "Terdapat hubungan antara kebiasaan merokok dan kanker paru - paru"
Setelah dilakukan berbagai pengujian, disimpulkan bahwa terdapat hubungan antara kebiasaan merokok dan kanker paru - paru yang tersaji pada tabel berikut:
Hipotesis Dasar
\(H_0\): Tidak ada hubungan antara merokok dan kanker paru (proporsi sama).
\(H_1\): Ada hubungan antara merokok dan kanker paru (proporsi berbeda).
| Metode | Statistik Uji | P-value | Keputusan |
|---|---|---|---|
| Uji Dua Proporsi (Z-test) | \[ Z=4.37 \] | \[ <0.000001 \] | Tolak \(H_0\) |
| Uji Chi-Square (\(\chi^2\)) | \[ \chi^2=18.14 \] | \[ <0.000001 \] | Tolak \(H_0\) |
| Uji Likelihood Ratio (\(G^2\)) | \[ G^2=19.87 \] | \[ <0.000001 \] | Tolak \(H_0\) |
| Fisher Exact Test | (Prob. Sebaran) | \[ <0.000001 \] | Tolak \(H_0\) |
Interpretasi Substantif:
Secara statistik, terdapat bukti yang sangat kuat bahwa status merokok berhubungan signifikan dengan peningkatan risiko kanker paru. Hal ini dibuktikan dengan Odds Ratio sebesar 2.98 dalam interval kepercayaan sebesar 95%, yaitu 1.78 sampai 4.95.
Seorang peneliti ingin melakukan riset mengenai ada tidaknya hubungan antara gender dengan preferensi partai politik di Amerika Serikat. Ia berhipotesis bahwa terdapat hubungan antara gender dengan preferensi partai politik di Amerika Serikat. Untuk membuktikan hal tersebut, ia melakukan sampling. Adapun, sampel yang diperoleh tersaji pada tabel berikut:
| Gender | Democrat | Republic | Independent | Total |
|---|---|---|---|---|
| Female | 495 | 272 | 590 | 1357 |
| Male | 330 | 265 | 498 | 1093 |
| Total | 825 | 537 | 1088 | 2450 |
Untuk menghitung ekspektasi, rumus dibawah ini dapat digunakan mencari nilai tersebut:
\[ E_{ij}=\frac{n_{i.} \times n_{.j}}{N} \]
# Data tabel
matrix_data <- matrix(c(495, 272,590,
330,265,498),
ncol = 3, byrow = TRUE)
# Uji Chi-square
uji <- chisq.test(matrix_data)
# Lihat ekspektasi
uji$expected## [,1] [,2] [,3]
## [1,] 456.949 297.4322 602.6188
## [2,] 368.051 239.5678 485.3812
Uji Chi-Square digunakan untuk menguji apakah ada hubungan antara dua variabel kategorikal. Adapun, hipotesis untuk pengujian ini sebagai berikut:
Hipotesis Nol (\(H_0\)): Tidak terdapat hubungan antara kelompok kategorikal
Hipotesis Alternatif (\(H_1\)): Terdapat hubungan antara kelompok kategorikal
Rumus Chi-Square:
\[ \chi^2=\sum\frac{(O-E)^2}{E} \]
dimana:
O adalah nilai observasi dalam tabel kontingensi.
E adalah nilai yang diharapkan, dihitung sebagai:
\[ E_{ij}=\frac{R_i\times C_j}{N} \]
dengan
\(R_i\) = total baris ke-i.
\(C_j\) = total kolom ke-j.
\(N\) = total sampel.
# Data tabel
matrix_data <- matrix(c(495, 272,590,
330,265,498),
ncol = 3, byrow = TRUE)
colnames(matrix_data) <- c("Democrat","Republic","Independent")
rownames(matrix_data) <- c("Female","Male")
# Uji Chi-square
uji <- chisq.test(matrix_data)
uji##
## Pearson's Chi-squared test
##
## data: matrix_data
## X-squared = 12.569, df = 2, p-value = 0.001865
Interpretasi :
Berdasarkan pengujian, setidaknya terdapat satu hubungan antar kelompok gender dengan preferensi partai politik.
Pearson Residual adalah bentuk paling dasar dari pengukuran penyimpangan antara data aktual dan data yang diharapkan pada setiap sel dalam tabel kontingensi. Untuk konsep perhitungan, pearson residual mengukur selisih murni antara frekuensi observasi dan frekuensi ekspektasi, kemudian distandardisasi dengan akar kuadrat dengan akar kuadrat dari frekuensi ekspektasinya.
\[ e_{ij}=\frac{O_{ij}-E_{ij}}{\sqrt{E_{ij}}} \]
dengan :
\(O_{ij}\) adalah Observasi
\(E_{ij}\) adalah Ekspektasi pada baris \(i\) dan kolom \(j\)
Jika hasil perhitungan bernilai positif, maka frekuensi aktual lebih tinggi dari ekspektasi (Terdapat hubungan yang positif antara variabel baris dan kolom).
Jika hasil perhitungan bernilai negatif, maka frekuensi aktual lebih rendah dari ekspektasi (Terdapat hubungan yang negatif antara variabel baris dan kolom).
Apabila, selisih antara frekuensi aktual dan ekskektasi bernilai 0. Tidak terdapat hubungan antar variabel antara variabel baris dan kolom.
Standardized Residual adalah Pearson Residual yang telah disesuaikan (dibagi) dengan estimasi simpangan bakunya (standard deviation). Penyesuaian ini memperhitungkan ukuran total baris dan total kolom dari sel tersebut terhadap total keseluruhan sampel.
\[ d_{ij}=\frac{O_{ij}-E_{ij}}{\sqrt{E_{ij}(1-\frac{R_i}{n})(1-\frac{C_j}{n})}} \]
dengan :
\(R_i\) adalah total baris \(i\)
\(C_j\) adalah total kolom \(j\)
\(N\) adalah total observasi keseluruhan
\[ e_{ij}=\frac{O_{ij}-E_{ij}}{\sqrt{E_{ij}}} \]
Jika nilai |\(e_{ij}\)| > 2, maka sel tersebut dianggap sebagai indikasi adanya outlier.
\[ d_{ij}=\frac{O_{ij}-E_{ij}}{\sqrt{E_{ij}(1-\frac{R_i}{n})(1-\frac{C_j}{n})}} \]
Jika |\(d_{ij}\)| > 3, maka sel tersebut dianggap sebagai outlier signifikan.
# Data Observasi
observed <- matrix(c(495, 272,590,
330,265,498),
ncol = 3, byrow = TRUE)
# Hitung nilai ekspektasi
expected <- chisq.test(observed)$expected
# Pearson Residual
pearson_residual <- (observed - expected) / sqrt(expected)
# Standardized Residual
row_sum <- rowSums(observed)
col_sum <- colSums(observed)
total_sum <- sum(observed)
standardized_residual <- (observed - expected) / sqrt(expected * (1 - row_sum / total_sum) * (1 - col_sum / total_sum))
# Menampilkan hasil
list(
Pearson_Residual = pearson_residual,
Standardized_Residual = standardized_residual
)## $Pearson_Residual
## [,1] [,2] [,3]
## [1,] 1.780051 -1.474656 -0.5140388
## [2,] -1.983409 1.643125 0.5727640
##
## $Standardized_Residual
## [,1] [,2] [,3]
## [1,] 3.272365 -2.961134 -0.8709524
## [2,] -3.015997 2.710941 1.0321988
Interpretasi :
Berdasarkan pengujian, terdapat hubungan antara variabel baris dan kolom pada kolom 1 dan 2. Akan tetapi, terdapat kecenderungan tidak adanya hubungan antara variabel baris dengan kolom. Selain itu, nilai pada kolom 1 teridentifikasi sebagai outlier dengan nilai |\(d_{ij}\)| > 3.
Partisi Chi-Square memiliki fungsi yang sama untuk mengetahui adanya hubungan antar variabel kategorikal. Akan tetapi, memiliki konsep yang sedikit berbeda, yaitu membagi variabel kategorikal hanya menjadi 2 kelompok. Hal ini cukup efektif bila memiliki studi kasus yang terdapat > 2 kelompok kategorikal. Adapun, hipotesis untuk pengujian ini sebagai berikut:
Hipotesis Nol (\(H_0\)): Tidak terdapat hubungan antara dua kelompok kategorikal
Hipotesis Alternatif (\(H_1\)): Terdapat hubungan antara dua kelompok kategorikal
Rumus Chi-Square:
\[ \chi^2=\sum\frac{(O-E)^2}{E} \]
dimana:
O adalah nilai observasi dalam tabel kontingensi.
E adalah nilai yang diharapkan, dihitung sebagai:
\[ E_{ij}=\frac{R_i\times C_j}{N} \]
dengan
\(R_i\) = total baris ke-i.
\(C_j\) = total kolom ke-j.
\(N\) = total sampel.
# Data tabel
matrix_data1 <- matrix(c(495,272,
330,265),
ncol = 2, byrow = TRUE)
colnames(matrix_data1) <- c("Democrat","Republic")
rownames(matrix_data1) <- c("Female","Male")
# Uji Chi-square
uji1 <- chisq.test(matrix_data1)
uji1##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: matrix_data1
## X-squared = 11.178, df = 1, p-value = 0.0008279
# Data tabel
matrix_data2 <- matrix(c(495+272, 590,
330+265,498),
ncol = 2, byrow = TRUE)
colnames(matrix_data2) <- c("Democrat&Republic","Independent")
rownames(matrix_data2) <- c("Female","Male")
# Uji Chi-square
uji2 <- chisq.test(matrix_data2)
uji2##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: matrix_data2
## X-squared = 0.98267, df = 1, p-value = 0.3215
Berikut hasil uji chi-square keseluruhan:
# Data tabel
matrix_data <- matrix(c(495, 272,590,
330,265,498),
ncol = 3, byrow = TRUE)
colnames(matrix_data) <- c("Democrat","Republic","Independent")
rownames(matrix_data) <- c("Female","Male")
# Uji Chi-square
uji <- chisq.test(matrix_data)
uji##
## Pearson's Chi-squared test
##
## data: matrix_data
## X-squared = 12.569, df = 2, p-value = 0.001865
Berdasarkan output yang dihasilkan, terdapat hubungan antara gender dengan preferensi partai politik yang dibuktikan dengan p-value kurang dari taraf signifikansi, yaitu 5%. Akan tetapi, tidak diketahui kelompok manakah yang memiliki hubungan. Dengan menggunakan partisi chi-square, kelompok dapat diidentifikasi, kelompok manakah yang memiliki hubungan. Adapun, hasil partisi uji chi-square sebagai berikut:
# Data tabel
matrix_data1 <- matrix(c(495,272,
330,265),
ncol = 2, byrow = TRUE)
colnames(matrix_data1) <- c("Democrat","Republic")
rownames(matrix_data1) <- c("Female","Male")
# Uji Chi-square
uji1 <- chisq.test(matrix_data1)
uji1##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: matrix_data1
## X-squared = 11.178, df = 1, p-value = 0.0008279
# Data tabel
matrix_data2 <- matrix(c(495+272, 590,
330+265,498),
ncol = 2, byrow = TRUE)
colnames(matrix_data2) <- c("Democrat&Republic","Independent")
rownames(matrix_data2) <- c("Female","Male")
# Uji Chi-square
uji2 <- chisq.test(matrix_data2)
uji2##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: matrix_data2
## X-squared = 0.98267, df = 1, p-value = 0.3215
Berdasarkan hasil pengujian, teridentifkasi bahwa kelompok gender terhadap preferensi partai politik (Democrat dan Republic) memiliki hubungan yang signifikan dengan bukti p-value kurang dari taraf signifikansi, yaitu 5%. Namun, hubungan antara kelompok gender terhadap preferensi partai politik (Democrat&Republic dan Independent) tidak memiliki hubungan yang signifikan dengan bukti p-value lebih dari taraf signifikansi, yaitu 5%. Hal ini menjawab pertanyaan yang tidak bisa dijawab pada uji chi-square keseluruhan, yaitu “Kelompok manakah yang memiliki hubungan?”.
Berdasarkan hasil partisi chi-square, kategori yang paling berkontribusi terhadap hubungan gender dengan preferensi partai politik adalah kelompok gender terhadap preferensi partai politik (Democrat dan Republic) memiliki hubungan yang signifikan dengan bukti p-value kurang dari taraf signifikansi, yaitu 5%. Akan tetapi, arah hubungannya tidak diketahui apabila hanya mengandalkan uji chi-square. Oleh karena itu, odds ratio dapat digunakan untuk mengetahui arah hubungan.
# Data tabel
matrix_data1 <- matrix(c(495,272,
330,265),
ncol = 2, byrow = TRUE)
colnames(matrix_data1) <- c("Democrat","Republic")
rownames(matrix_data1) <- c("Female","Male")
odds <- (matrix_data1[1,1]*matrix_data1[2,2])/(matrix_data1[1,2]*matrix_data1[2,1])
odds## [1] 1.461397
Berdasarkan output yang dihasilkan, terdapat kecenderungan (asosiasi positif) bahwa pemilih perempuan lebih mungkin berafiliasi dengan partai Democrat dibandingkan pemilih laki-laki dalam sampel data tersebut.