Analisis Kesihatan: Panduan Untuk Pemula
Hai, para penasihat data yang ambisius! Hari ini, kita akan memulakan sebuah perjalanan menarik ke dalam dunia analisis kesihatan menggunakan R. Jangan khawatir jika anda belum pernah menulis satu baris kod sebelum ini - saya akan menjadi panduannya yang ramah setiap langkah yang anda buat. Mari kita masuk ke dalamnya!
Apa Itu Analisis Kesihatan?
Sebelum kita mula menulis kod, mari kita memahami apa itu analisis kesihatan. Bayangkan anda adalah seorang doktor yang mempelajariberapa lama pasien hidup selepas rawatan tertentu. Atau mungkin anda adalah seorang analis bisnes yang melihatberapa lama pelanggan tinggal sebelum membatalkan langganan. Itulah di mana analisis kesihatan berguna!
Analisis kesihatan membantu kita menjawab soalan seperti:
- Berapa lama sehingga peristiwa berlaku?
- Mana-mana faktor yang mempengaruhi masa sehingga peristiwa?
- Bagaimana perbandingan kumpulan yang berbeza dalam masa kesihatan?
Sekarang, mari kita mulakan kerjanya dengan beberapa kod R!
Memasang dan Memuatkan Pakej Yang Diperlukan
Pertama-tama, kita perlu memasang dan muatkan pakej yang diperlukan. Dalam R, pakej adalah seperti kotak alat yang mengandungi fungsi yang berguna untuk tugas-tugas khusus.
# Pasang pakej 'survival'
install.packages("survival")
# Muatkan pakej
library(survival)
Jangan bimbang jika anda melihat beberapa mesej muncul saat anda menjalankan perintah ini. Sebagai mana terdapat mesej kesilapan merah, anda dalam keadaan baik!
Memuatkan dan Mengeksplor Data
Untuk panduan ini, kita akan menggunakan set data binaan yang dipanggil 'lung' daripada pakej survival. Set data ini mengandungi maklumat tentang pasien dengan kanser paru tingkat lanjut.
# Muatkan set data lung
data(lung)
# Lihat beberapa baris pertama
head(lung)
# Dapatkan ringkasan set data
summary(lung)
Saat anda menjalankan perintah ini, anda akan melihat gambaran data. Ambil sedikit masa untuk mengenal pasti variabel. Kita akan bekerja dengan:
- 'time': masa kesihatan dalam hari
- 'status': status sensor (1=disensor, 2=meninggal)
- 'age': umur pasien
- 'sex': jantina pasien (1=lelaki, 2=perempuan)
Mencipta Objek Kesihatan
Sekarang, mari kita cipta objek kesihatan. Ini adalah objek khas R yang menggabungkan masa kesihatan dan status peristiwa.
# Cipta objek kesihatan
surv_object <- Surv(time = lung$time, event = lung$status == 2)
# Papar beberapa entri pertama
head(surv_object)
Anda akan melihat rangkaian nombor dengan tanda '+' di akhir. Tanda '+' menunjukkan observasi disensor (pasien yang masih hidup pada akhir kajian).
Curva Kesihatan Kaplan-Meier
Salah satu visualisasi paling biasa dalam analisis kesihatan adalah curva Kaplan-Meier. Ia menunjukkan probabiliti kesihatan sepanjang masa.
# Suaikan curva Kaplan-Meier
km_fit <- survfit(surv_object ~ 1, data = lung)
# Plot curva
plot(km_fit, main = "Curva Kesihatan Kaplan-Meier",
xlab = "Masa (hari)", ylab = "Probabiliti Kesihatan")
Voila! Anda baru saja mencipta curva kesihatan pertama anda. Sumbu-y menunjukkan probabiliti kesihatan, dan sumbu-x menunjukkan masa dalam hari. Curva turun setiap kali peristiwa (kematian) terjadi.
Menbandingkan Kumpulan: Lelaki vs Perempuan
Mari kita bandingkan curva kesihatan untuk lelaki dan perempuan.
# Suaikan curva Kaplan-Meier mengikut jantina
km_sex <- survfit(surv_object ~ sex, data = lung)
# Plot curva
plot(km_sex, col = c("blue", "red"), main = "Curva Kesihatan Mengikut Jantina",
xlab = "Masa (hari)", ylab = "Probabiliti Kesihatan")
legend("topright", c("Lelaki", "Perempuan"), col = c("blue", "red"), lty = 1)
Sekarang anda memiliki dua curva: biru untuk lelaki dan merah untuk perempuan. Ada perbezaan yang dapat anda lihat?
Model Ancaman Proportional Cox
Akhirnya, mari kita suai model ancaman proporsional Cox. Model ini membantu kita memahami bagaimana faktor-faktor yang berbeza mempengaruhi kesihatan.
# Suaikan model ancaman proporsional Cox
cox_model <- coxph(surv_object ~ age + sex, data = lung)
# Papar ringkasan
summary(cox_model)
Jangan terkejut dengan output! Berikut adalah apa yang perlu dicari:
- Kolom 'coef' menunjukkan kesan setiap variabel.
- Kolom 'exp(coef)' lebih mudah untuk ditafsirkan: nilai > 1 menunjukkan risiko meningkat, < 1 menunjukkan risiko berkurangan.
- Kolom 'Pr(>|z|)' menunjukkan nilai p. Nilai kecil (< 0.05) menunjukkan kesan statistik yang penting.
Kesimpulan
Tahniah! Anda baru saja menyelesaikan analisis kesihatan pertama anda dalam R. Kita telah meliputi banyak hal, dari mencipta objek kesihatan hingga mensuai model kompleks. Ingat, latihan membawa ke kemahiran. Cobalah untuk bermain dengan kod, mengubah variabel, dan lihat apa yang terjadi.
Berikut adalah ringkasan fungsi utama yang kami gunakan:
Fungsi | Tujuan |
---|---|
Surv() | Cipta objek kesihatan |
survfit() | Suaikan curva kesihatan |
plot() | Visualisasi curva kesihatan |
coxph() | Suaikan model ancaman proporsional Cox |
Terus eksplor, terus belajar, dan terutama, bersenang-senang dengan R dan analisis kesihatan!
Credits: Image by storyset