54
NODMK TGLLHR TMPLHR STATUS GENDERPS AGAMA KDKERJA NMKERJA ALMPS KDKAB NMKAB
746090 10/7/1949 SURABAYA M P Islam 14 Tidak Bekerja SEMOLOWARU INDAH B-13 3578 Surabaya Kodya.
711229 6/30/1935 M L Islam 3 Pensiunan PLOSO 8C/6 3578 Surabaya Kodya.
10442119 1/1/2025 M L Islam 14 Tidak Bekerja DUKUH KAWAL KALI KENDAL RT1 RW2 3578 Surabaya Kodya.
395597 6/1/2022 M L Islam 14 Tidak Bekerja TENGGUMUNG BARU SELATAN 3/1 3578 Surabaya Kodya.
19347 1/1/1939 M P Islam 10 Ibu Rumah Tangga TANJUNG KARANG 49 3578 Surabaya Kodya.
208703 5/9/1942 M P Islam 4 Pegawai Swasta KEDUNG COWEK 69 3578 Surabaya Kodya.
37787 10/10/1940 M P Katolik 10 Ibu Rumah Tangga TANJUNG PINANG 74 3578 Surabaya Kodya.
759783 5/30/1943 M P Islam 10 Ibu Rumah Tangga PETEMON 4/156 3578 Surabaya Kodya.
15749 1/1/1935 M L Islam 1 Pegawai Negeri KEBONSARI SEKOLAHAN 10 3578 Surabaya Kodya.
13508 4/20/1935 M L Islam 1 Pegawai Negeri TENGGILIS MEJOYO B/9 3578 Surabaya Kodya.
49932 1/10/1935 M L Islam 3 Pensiunan KETINTANG PERMAI BD-13 3578 Surabaya Kodya.
63898 6/12/1993 B L Islam 11 Pelajar BANYU URIP MOLIN 2/45 3578 Surabaya Kodya.
9896 5/7/1946 M P Islam 14 Tidak Bekerja RANGKAH BUNTU 2/22 3578 Surabaya Kodya.
10680247 12/29/2004 B L Islam 13 Dibawah Umur DUKUH KARANGAN 3/11 3578 Surabaya Kodya.
147278 1/1/1944 M P Islam 10 Ibu Rumah Tangga MES AMPEL 4/23 3578 Surabaya Kodya.
147322 1/1/1940 M L Islam 1 Pegawai Negeri KARTINI 9 3578 Surabaya Kodya.
10485445 1/1/1970 M L Kristen 4 Pegawai Swasta POGOT LAMA 3/16 3578 Surabaya Kodya.
448488 9/16/1948 SOLO M L Islam 4 Pegawai Swasta GUBENG KERTAJAYA 4D/25 3578 Surabaya Kodya.
46951 1/1/1945 M P Islam 10 Ibu Rumah Tangga WARINGIN 19 3578 Surabaya Kodya.
665754 1/1/1938 M L Islam 4 Pegawai Swasta ASEM JAYA 1/4 3578 Surabaya Kodya.
55
Universitas Kristen Petra
KDPROP NMPROP JML_MRS MRS_KE WKTMSK WKTKLR LAMA_RAWAT DIAG1 JUD3
35 JAWA TIMUR 1 1 11/6/2006 11/10/2006 3.9286 C54.9 Corpus uteri, unspecified
35 JAWA TIMUR 2 1 10/4/2006 10/12/2006 7.59825 K74.6 Other and unspecified cirrhosis of liver 35 JAWA TIMUR 1 1 2/11/2005 2/21/2005 10.12762 N40.X Hyperplasia of prostate
35 JAWA TIMUR 1 1 12/22/2006 12/26/2006 4.1178 K56.5 Intestinal adhesions (bands) with obstruction 35 JAWA TIMUR 1 1 1/20/2002 1/22/2002 2.11932 H25.1 Senile nuclear cataract
35 JAWA TIMUR 3 3 7/11/2007 7/19/2007 7.79928 E14.9 Without complications 35 JAWA TIMUR 1 1 1/19/2006 1/24/2006 4.56104 N18.9 Chronic renal failure, unspecified 35 JAWA TIMUR 2 2 3/20/2007 4/9/2007 19.75323 Z51.9 Medical care, unspecified 35 JAWA TIMUR 1 1 10/31/2006 11/15/2006 15.58919 S72.1.0 Pertrochanteric fracture 35 JAWA TIMUR 1 1 6/30/2006 7/18/2006 18.29392 I49.5 Sick sinus syndrome 35 JAWA TIMUR 3 3 3/24/2007 3/28/2007 4.33333 Z51.9 Medical care, unspecified
35 JAWA TIMUR 1 1 3/5/2002 3/7/2002 2.08333 A09.X Diarrhoea and Gastroenteritis Of Presumed Infectious Origin 35 JAWA TIMUR 1 1 9/2/2006 9/20/2006 18.125 I63.9 Cerebral infarction, unspecified
35 JAWA TIMUR 1 1 1/8/2007 1/10/2007 2.02292 N44.X Torsion of testis
35 JAWA TIMUR 1 1 11/22/2006 11/28/2006 5.49103 I63.9 Cerebral infarction, unspecified 35 JAWA TIMUR 1 1 5/7/2002 5/14/2002 7.37822 E11.2 With renal complications
35 JAWA TIMUR 1 1 6/16/2005 6/21/2005 4.99748 Z47.0 Follow-up involving removal of fracture plate and other internal 35 JAWA TIMUR 1 1 4/16/2003 4/24/2003 7.7086 H40.3 Glaucoma secondary roeye trauma
35 JAWA TIMUR 1 1 11/24/2005 12/5/2005 10.95302 E11.5 With peripheral circulatory complications 35 JAWA TIMUR 1 1 7/17/2007 7/18/2007 1.08672 E14.9 Without complications
56
KONDKEL CARAKEL TGLMATI HARGA JNS_JAMINAN NMPLYN JML_CICIL
BS Dipulangkan 338100 1 Askes 1
S Dipulangkan 870000 1 Askes 1
S Dipulangkan 0 6 Umum 2
S Dipulangkan 659100 1 Askes 1
S Dipulangkan 494000 1 Askes 1
S Dipulangkan 1173000 1 Askes 1
S Dipulangkan 1048100 1 Askes 1
S Dipulangkan 1682000 8 JPS/MASKIN 1
S Dipulangkan 5302500 1 Askes 1
S Dipulangkan 2394000 1 Askes 1
M<48 Dipulangkan 3/28/2007 947000 1 Askes 1
S Dipulangkan 139600 6 Umum 1
BS Pulang Paksa 1842500 1 Askes 1
S Dipulangkan 2023550 8 JPS/MASKIN 2
S Dipulangkan 931000 1 Askes 1
BS Pulang Paksa 1018600 1 Askes 1
S Dipulangkan 230000 8 JPS/MASKIN 2
S Dipulangkan 192900 6 Umum 1
BS Pulang Paksa 1648600 1 Askes 1
S Dipulangkan 274100 1 Askes 1
Panduan Penggunaan Program Data Mining
Oleh:
Stefanie Hartanto NRP: 25406014
Dibuat Dengan Bimbingan:
Dr.rer.nat Siana Halim, S.Si., M.Sc. NIP: 94032
PENGANTAR
Buku panduan penggunaan program ini dibuat sebagai wacana pendukung program data mining. Program data mining merupakan suatu program yang berbasis R 2.9.0 yang bertujuan untuk membantu pengguna memperoleh informasi yang menarik dari berbagai penyakit yang ada pada database pasien RSU Dr. Soetomo. Informasi tersebut meliputi gambaran umum mengenai penderita penyakit, tingkat ketahanan hidup dari penderita, serta pemetaan penyebaran penyakit tersebut di wilayah Surabaya.
Penulis berharap buku panduan ini dapat membantu pengguna dalam memahami dan menjalankan program.
November 2009,
Penulis
Program data mining merupakan suatu program yang berbasis R 2.9.0.
Sebelum menggunakan program, pengguna harus memiliki program R script serta menginstal packages yang diperlukan. Daftar program R script dan packages yang digunakan dapat dilihat pada tabel berikut. Dalam proses menjalankan program, pengguna hanya akan membuka program utama saja. Semua program R script tersebut harus berada dalam satu folder tertentu.
Fungsi Program Utama Program Pendukung
(Function) R Packages Statistik deskriptif Graph.R Graph_BarChart.R
Graph_Boxplot.R Graph_ClusterBar.R Graph_clusthist.R Graph_HistEqual.R Graph_Histogram2.R Graph_PieChart.R Graph_ScatterHist.R Graph_TimeSeries.R
graphics grDevices plottrix lattice
Survival analysis Survival.R Survival_cox.R
Survival_curvesgen.R Survival_curvesspec.R Survival_curvesspec2.R Survival_object.R Survival_ust.R
survival splines
Spatial data analysis Spatial.R Spatial_covp.R
Spatial_crossval.R Spatial_kernel.R Spatial_kriging.R Spatial_krigpred.R Spatial_likfit.R Spatial_neighbor.R Spatial_outdet.R Spatial_remove.R Spatial_variogram.R
geoR spatstat np sp mgcv gpclib deldir boot
Keterangan: R installer dan packages dapat di-download di www.r-project.org
Sebagai langkah awal dalam penggunaan program, pengguna perlu mengganti working directory pada directory di mana program R script dan data disimpan. Caranya melalui: File Æ Change dir, kemudian tentukan directory yang dipilih dan klik OK, misalnya pada directory: D:\Data.
Program data mining dibagi menjadi tiga bagian besar, yaitu program statistik deskriptif, survival analysis, serta spatial data analysis. Setiap program memiliki cara penggunaannya masing-masing. Penggunaan tersebut akan dijelaskan pada bab berikutnya. Tipe data yang akan digunakan dalam pengolahan memiliki ekstensi file .csv (comma delimited value). Data dalam bentuk demikian dapat dibuat melalui Microsoft Excel dengan save as type CSV (comma delimited value).
1. Program Statistik Deskriptif
Program statistik deskriptif memberikan informasi mengenai pola time series jumlah penderita per tahunnya serta karakteristik penderita penyakit.
Program ini memiliki output berupa penyajian statistik deksriptif dengan beragam diagram. Program statistik deskriptif memiliki program utama Graph.R. Sebelum menjalankan program, pengguna perlu membuka file R script yang merupakan program utama, yaitu Graph.R. Cara membuka R script adalah dengan: File Æ
Open script, kemudian pilih Graph.R, kemudian klik OK. Berikut merupakan tampilan R script yang muncul:
library(graphics) library(grDevices) library(plotrix) library(lattice)
namadiagnosa = "Pneumonia"
data = read.csv(paste(namadiagnosa,"_data.csv",sep="")) datausia = read.csv(paste(namadiagnosa,"_usia.csv",sep=""))
datacount = read.csv(paste(namadiagnosa,"_count_month.csv",sep="")) dataframe = as.data.frame(data)
n = length(data$NODMK)
dir = "D:\\Documents\\TA\\R\\Program\\"
Program dapat menampilkan plot deskriptif untuk beragam jenis penyakit sesuai dengan pilihan pengguna. Langkah awal dilakukan dengan mengganti variabel namadiagnosa dan dir. Variabel namadiagnosa diisi dengan nama penyakit tertentu yang ada di dalam database, seperti contoh di atas “Pneumonia”, sedangkan variabel dir diisi dengan working directory tempat file data tersimpan.
Selanjutnya, pengguna perlu melakukan selection pada script yang tersebut dan memilih icon (run line or selection) yang terletak pada toolbar atau dengan menggunakan shortcut Ctrl + R.
Script dibagi menjadi beberapa bagian yang berfungsi untuk menampilkan plot deskriptif yang berbeda. Dalam menjalankan program, beberapa bagian script yang perlu diubah sesuai dengan variabel yang hendak ditampilkan pengguna, misalnya untuk menampilkan pie chart yang menggambarkan proporsi antara penderita wanita dan pria, maka perlu menuju script untuk pie chart sebagai berikut:
########################### pie chart ###########################
var = data$GENDERPS datapie = summary(var) datapie
col = rainbow(10)
title = paste("Gender Penderita",namadiagnosa)
dir4 = paste(dir,"Graph_PieChart.R",sep="") source(dir4)
piechart(datapie, main = title, col = col)
Pengguna perlu mengganti variabel var dan title seperti yang tampak dalam kotak merah. Setelah itu, dilakukan selection dan run pada bagian script tersebut untuk menampilkan pie chart proporsi penderita wanita dan pria untuk suatu penyakit. Berikut merupakan contoh output dan variabel yang perlu diubah untuk setiap jenis plot deskriptif:
Jenis Plot Deskriptif Contoh Output Variabel
Time series -
Pie chart var
Bar chart
var title xlab
Clustered bar chart rowvar
colvar title xlab
Jenis Plot Deskriptif Contoh Output Variabel
Histogram var
title xlab
Histogram with equal counts
var title xlab
Scatter histogram
rowvar colvar xlab ylab
Conditional histogram rowvar
colvar title xlab
Clustered histogram rowvar
colvar title xlab
Jenis Plot Deskriptif Contoh Output Variabel
Boxplot var
title xlab
2. Program Survival Analysis
Program survival analysis melakukan analisis terhadap tingkat ketahanan hidup dari penderita penyakit dalam interval waktu tertentu. Output yang dihasilkan dari program antara lain dapat berupa life table dan kurva survival.
Program survival analysis memiliki program utama Survival.R. Sebelum menjalankan program, pengguna perlu membuka file R script yang merupakan program utama, yaitu Survival.R. Cara membuka R script adalah dengan: File Æ Open script, kemudian pilih Survival.R, kemudian klik OK. Berikut merupakan tampilan R script yang muncul:
library(survival)
namadiagnosa = "Pneumonia"
data = read.csv(paste(namadiagnosa,"_data.csv",sep="")) datausia = read.csv(paste(namadiagnosa,"_usia.csv",sep="")) dataframe = as.data.frame(data)
dir = "D:\\Documents\\TA\\R\\Program\\"
Program dapat menampilkan tingkat ketahanan hidup untuk beragam jenis penyakit sesuai dengan pilihan pengguna. Langkah awal dilakukan dengan mengganti variabel namadiagnosa dan dir. Variabel namadiagnosa diisi dengan nama penyakit tertentu yang ada di dalam database, seperti contoh di atas
“Pneumonia”, sedangkan variabel dir diisi dengan working directory tempat data tersimpan. Selanjutnya, pengguna perlu melakukan selection pada script tersebut
dan memilih icon (run line or selection) yang terletak pada toolbar atau dengan menggunakan shortcut Ctrl + R.
Script dibagi menjadi beberapa bagian yang memiliki fungsi berbeda.
Dalam menjalankan program, beberapa bagian script yang perlu diubah sesuai dengan fungsi yang hendak ditampilkan pengguna. Program survival analysis terdiri dari beberapa langkah, yaitu:
a. Survival analysis secara umum
Pada bagian ini, terdapat dua jenis output yang dihasilkan, yaitu kurva survival dan life table pada R console. Berikut merupakan script yang berkaitan dengan survival analysis secara umum:
##################### SURVIVAL CURVES (GENERAL) #####################
surv = Surv(dataframe$LAMA_RAWAT, dataframe$TGLMATI!="")
dir22 = paste(dir,"Survival_curvesgen.R",sep="") source(dir22)
mfit = mfit(surv) mfit
Pengguna hanya perlu melakukan selection dan run pada bagian script tersebut, tanpa mengganti variabel apapun, untuk menampilkan survival analysis secara umum. Output yang dihasilkan terdiri dari dua jenis, yaitu gambar kurva survival dan hasil estimasi Kaplan-Meier pada R console.
time n.risk n.event survival std.err 0 1850 0 1,000 0,00000 1 1765 66 0,964 0,00433 2 1680 44 0,940 0,00556 3 1552 27 0,924 0,00621 4 1343 27 0,907 0,00692 5 1126 11 0,899 0,00727 ... (some output omitted here) ...
40 13 2 0,585 0,07182 41 13 0 0,585 0,07182 42 10 0 0,585 0,07182 43 10 0 0,585 0,07182 44 10 0 0,585 0,07182 45 8 2 0,468 0,09369
Gambar kurva survival menunjukkan probabilitas penderita dapat hidup apabila belum mengalami kesembuhan hingga hari tertentu. Sebagai contoh, apabila penderita belum mengalami kesembuhan hingga hari ke-5, maka probabilitas penderita tetap dapat hidup adalah 89,9%. Output terdiri dari beberapa variabel, yaitu time, number of people at risk, number of event, survival probability, serta standard error. Time menunjukkan lama rawat penderita Pneumonia. Number of people at risk merupakan jumlah penderita yang dapat bertahan hingga time tertentu, sedangkan number of events merupakan jumlah kematian yang terjadi pada saat time tertentu.
b. Survival analysis berdasarkan variabel tertentu
Tingkat ketahanan hidup penderita juga dapat dilihat dari berbagai sudut pandang, seperti usia, jenis kelamin, serta variabel lainnya. Sebagai contoh, bagaimana perbedaan tingkat ketahanan hidup pada penderita wanita dan pria, berarti variabel pembedanya adalah jenis kelamin. Berikut merupakan script yang berkaitan dengan survival analysis berdasarkan jenis kelamin:
#################### SURVIVAL CURVES (SPECIFIC) ######################
surv = Surv(dataframe$LAMA_RAWAT, dataframe$TGLMATI!="") var = dataframe$GENDER
namavariabel = "Gender"
dir23 = paste(dir,"Survival_curvesspec.R",sep="") source(dir23)
mfit.by = mfit.by(surv, var, namavariabel) mfit.by
Pengguna perlu mengganti variabel var dan namavariabel dengan nama variabel pembeda yang dikehendaki. Setelah itu, perlu dilakukan selection dan run pada bagian script tersebut untuk menampilkan survival analysis berdasarkan variabel yang dipilih. Berikut merupakan contoh output yang dihasilkan:
Hasil output tersebut dapat menunjukkan pola kurva survival untuk setiap kategori. Tingkat signifikansi perbedaan antara kategori dapat diketahui dengan melakukan log-rank test berikut:
### Log-Rank Test
logrank = survdiff(surv ~ var, data = dataframe) logrank
Pengguna perlu melakukan selection dan run pada bagian script tersebut.
Output dihasilkan pada R console seperti contoh berikut:
Call:
survdiff(formula = surv ~ var, data = dataframe)
N Observed Expected (O-E)^2/E (O-E)^2/V var=L 1069 160 150 0,668 1,58 var=P 781 101 111 0,902 1,58
Chisq= 1,6 on 1 degrees of freedom, p= 0,209
Tingkat signifikansi perbedaan dapat diketahui dengan melihat nilai p.
Apabila nilai p lebih kecil dari 0,05, maka ada perbedaan yang signifikan di antara kategori yang dibandingkan, dan sebaliknya. Pada contoh di atas, berarti tidak ada perbedaan yang signifikan pada tingkat ketahanan hidup di antara penderita wanita dan pria.
c. Cox proportional hazard regression analysis
Cox proportional hazards regression analysis dilakukan untuk mengetahui faktor mana saja yang berpengaruh pada tingkat ketahanan hidup penderita
secara signifikan serta seberapa besar pengaruhnya. Berikut merupakan bagian script yang berkaitan:
surv2 = Surv(datausia$LAMA_RAWAT, datausia$TGLMATI!="") datausia = data.frame(datausia)
gender = as.numeric(datausia$GENDERPS) kerja = as.numeric(datausia$NMKERJA) wilayah = as.numeric(datausia$WILAYAH) diagnosa = as.numeric(datausia$JUD3) usia = datausia$USIA
dir25 = paste(dir,"Survival_cox.R",sep="") source(dir25)
cox = cox(surv2, gender, kerja, wilayah, diagnosa, usia) cox
Pengguna hanya perlu melakukan selection dan run pada bagian script tersebut, tanpa mengganti variabel apapun, untuk menampilkan hasil Cox proportional hazards regression analysis. Output dihasilkan pada R console seperti contoh berikut:
Faktor yang secara signifikan berpengaruh dapat diketahui dengan melihat nilai p pada masing-masing variabel. Apabila nilai p lebih kecil dari 0,05, maka faktor tersebut berpengaruh. Pada contoh di atas, berarti hanya variabel usia yang berpengaruh secara signifikan pada tingkat ketahanan hidup penderita.
3. Program Spatial Data Analysis
Program spatial data analysis berfungsi untuk menggambarkan penyebaran suatu penyakit di area Surabaya. Program spatial data analysis memiliki program utama Spatial.R. Sebelum menjalankan program, pengguna perlu membuka file R script yang merupakan program utama, yaitu Spatial.R.
Cara membuka R script adalah dengan: File Æ Open script, kemudian pilih Spatial.R, kemudian klik OK. Berikut merupakan tampilan R script yang muncul:
coef exp(coef) se(coef) z p gender 0,1121 1,119 0,24630 0,455 6,5e-01 kerja 0,0372 1,038 0,04169 0,893 3,7e-01 wilayah -0,0435 0,957 0,07196 -0,605 5,5e-01 diagnosa -0,0285 0,972 0,03838 -0,742 4,6e-01 usia 0,0326 1,033 0,00625 5,207 1,9e-07
library(geoR) library(spatstat) library(np)
# input source data # namadiagnosa = "Pneumonia"
source = read.csv(paste(namadiagnosa,"_spasial.csv",sep="")) dir = "D:\\Documents\\TA\\R\\Program\\"
Program dapat menampilkan tingkat ketahanan hidup untuk beragam jenis penyakit sesuai dengan pilihan pengguna. Langkah awal dilakukan dengan mengganti variabel namadiagnosa dan dir. Variabel namadiagnosa diisi dengan nama penyakit tertentu yang ada di dalam database, seperti contoh di atas
“Pneumonia”, sedangkan variabel dir diisi dengan working directory tempat data tersimpan. Selanjutnya, pengguna perlu melakukan selection pada script tersebut dan memilih icon (run line or selection) yang terletak pada toolbar atau dengan menggunakan shortcut Ctrl + R.
Script dibagi menjadi beberapa bagian yang memiliki fungsi berbeda.
Dalam menjalankan program, beberapa bagian script yang perlu diubah sesuai dengan fungsi yang hendak ditampilkan pengguna. Program spatial data analysis terdiri dari beberapa langkah, yaitu:
a. Plot Geodata
Geodata merupakan suatu data spasial yang disimpan dalam bentuk sebuah objek dalam pengolahan data oleh geoR. Berikut merupakan script untuk plot Geodata:
########################### PLOT DATA ###############################
### plot data
data = as.geodata(source,coords.col = 5:6, data.col = 4) plot(data)
Pengguna hanya perlu melakukan selection dan run tanpa mengubah variabel apapun. Output yang dihasilkan terdiri dari empat grafik, yaitu plot lokasi geografis dari data observasi, plot data terhadap koordinat x, plot data terhadap koordinat y, serta histogram densitas data.
Koordinat x dan koordinat y secara berturut-turut menyatakan posisi bujur dan lintang suatu area. Pada plot lokasi geografis dari data observasi, ditunjukkan letak daerah observasi. Setiap simbol yang berbeda mengindikasikan data proporsi penderita Pneumonia yang ada di kelurahan tersebut. Simbol lingkaran, segitiga, plus, dan silang secara berturut-turut menyatakan data pada kuartil pertama, kedua, ketiga, dan keempat. Plot data terhadap salah satu koordinat menunjukkan adanya perubahan varians data terhadap suatu arah tertentu, baik melintang maupun membujur. Sedangkan, histogram densitas data menunjukkan jumlah area kelurahan yang memiliki proporsi jumlah penderita Pneumonia pada interval tertentu.
b. Deteksi dependensi secara spasial
Deteksi dependensi data secara spasial dilakukan melalui plot empirical variogram. Berikut merupakan bagian script untuk plot variogram:
### ini.cov.pars
varfunc = variog(data, uvec = seq(0, 1, l = 70))
dir11 = paste(dir,"Spatial_covp.R",sep="") source(dir11)
ini = maxdcovp(varfunc)
### plot variogram dist = ini[[2]][1]
l = 100
dir12 = paste(dir,"Spatial_variogram.R",sep="") source(dir12)
varioplot = variogr(dist, l)
Pengguna hanya perlu melakukan selection dan run tanpa mengubah variabel apapun. Output yang dihasilkan berupa variogram dengan classical dan modulus estimator.
Plot empirical variogram menggambarkan semivariance data terhadap suatu distance tertentu, bukan terhadap posisi koordinat tertentu. Pada distance yang kecil, nilai semivariance umumnya cenderung kecil. Hal ini menunjukkan adanya homogenitas data pada daerah yang berdekatan. Secara umum, nilai semivariance tersebut semakin meningkat seiring dengan meningkatnya distance antar daerah.
c. Pemetaan penyebaran penyakit dengan kriging
Pemetaan penyebaran penyakit dihasilkan dalam bentuk kontur kriging.
Berikut merupakan bagian script yang akan digunakan:
inicovpars = c(ini[[1]][1],ini[[1]][2]) ininugget = ini[[1]][3]
dir20 = paste(dir,"Spatial_likfit.R",sep="") source(dir20)
likfit = fit(inicovpars, ininugget) summary(likfit)
dir15 = paste(dir,"Spatial_crossval.R",sep="") source(dir15)
crossval = crossval(likfit)
covpars = c(likfit$cov.pars[1],ini[[1]][2])
dir18 = paste(dir,"Spatial_kriging.R",sep="") source(dir18)
krig = krig(covpars)
Pengguna perlu melakukan selection dan run pada bagian script tersebut.
Output yang dihasilkan berupa kontur kriging penyebaran penyakit yang dipilih di Surabaya. Pada hasil kontur kriging, semakin muda warna kontur menunjukkan proporsi penderita di area tersebut semakin tinggi.
Di samping itu, pengguna juga dapat melakukan prediksi proporsi penderita penyakit di suatu area tertentu. Suatu area didefinisikan dengan koordinat lintang dan bujur. Prediksi hanya dapat dilakukan di area Surabaya agar estimasi proporsi yang dihasilkan dapat lebih akurat. Berikut merupakan bagian script yang berkaitan:
############################ PREDICT ###############################
pred = readline("Anda ingin melakukan prediksi Kriging untuk suatu area? (Y/T) = ")
## ANSWER Y/T ON CONSOLE
Pengguna perlu melakukan selection dan run pada bagian tersebut. Setelah itu, pengguna melakukan selection dan run kembali untuk bagian script di bawah ini:
predans = pred
dir19 = paste(dir,"Spatial_krigpred.R",sep="") source(dir19)
krigpred = krigpred(predans)
Apabila sebelumnya pengguna menjawab “Y”, maka akan muncul pertanyaan mengenai koordinat lintang dan bujur pada R console. Setelah pengguna selesai memasukkan koordinat lintang dan bujur, maka program akan menampilkan estimasi proporsi penderita di area tersebut. Berikut merupakan contoh input dan output tampilan untuk prediksi proporsi penderita:
Anda ingin melakukan prediksi Kriging untuk suatu area? (Y/T) = Y
Masukkan koordinat lintang (minimum:-7,35000, maksimum:-7,209096) = -7,25 Masukkan koordinat bujur (minimum:112,6022, maksimum:112,812) = 112,7
krige,conv: model with constant mean
krige,conv: Kriging performed using global neighbourhood
Estimasi proporsi penderita penyakit Pneumonia di area ( -7,25 , 112,7 ) adalah 0,0005234345
Hasil prediksi memberikan estimasi proporsi penderita penyakit Pneumonia di area dengan lintang -7,25 dan bujur 112,7 sebesar 0,0005234345 terhadap jumlah penduduk di area tersebut. Sebagai contoh, apabila jumlah penduduk di area tersebut adalah 10.000 orang, maka prediksi jumlah penderitanya adalah 5 orang.
d. Deteksi outlier
Langkah awal yang harus dilakukan sebelum mendeteksi outlier adalah mendefinisikan neighborhood. Neighborhood memiliki suatu parameter, yaitu distance. Setiap area lain yang berada di dalam distance yang telah ditentukan akan dinyatakan sebagai neighbor dari suatu area. Berikut merupakan bagian script untuk definisi neighborhood:
data2 = cbind(source$Bujur, source$Lintang) prop = cbind(data2, source$Prop)
distance2 = 0.01 theta = 2
dir8 = paste(dir,"Spatial_neighbor.R",sep="") source(dir8)
neighbor = neigh.dist(data2, distance2) neighbor
Pengguna dapat mendefinisikan distance yang dikehendaki dan kemudian melakukan selection dan run pada bagian script tersebut. Setelah itu, pada R console akan ditampilkan setiap neighborhood untuk seriap area observasi.
Output ditampilkan dalam bentuk urutan nomor sesuai dengan urutan pada data spasial. Selanjutnya akan dilakukan proses deteksi outlier melalui algoritma Route Outlier Detection. Berikut bagian script untuk mendeteksi outlier:
dir9 = paste(dir,"Spatial_outdet.R",sep="") source(dir9)
out = outlier.det(data2, prop, distance2, theta) out
Pada R console, akan ditampilkan urutan data observasi yang menjadi outlier, seperti contoh berikut:
$outlier
[1] 8 18 20 21 25 26 29 30 115 159
Pada contoh di atas, output menunjukkan bahwa data pada kelurahan Benowo (8), Simomulyo (18), Tanjungsari (20), Gadel (21), Gedangasin (25), Karang Poh (26), Manukan Wetan (29), Manukan Kulon (30), Kalijudan (115), dan Keputran (159) merupakan data outlier. Selanjutnya, untuk mengeluarkan data outlier dari keseluruhan data, maka dilakukan proses outlier removing.
Berikut merupakan bagian script untuk outlier removing:
dir10 = paste(dir,"Spatial_remove.R",sep="") source(dir10)
rmv = outrmv() rmv
source2 = cbind(data.frame(source), rmv) source = source2[which(rmv == "no"),]
Setelah data outlier dikeluarkan, maka pengguna dapat melakukan analisis kembali dan membandingkan hasilnya dengan data asli.