antartitik

Cara kerja dan metode

Kembali ke analisis

Cara kerja dan metode antartitik

Halaman ini menjelaskan apa yang dikerjakan mesin antartitik di balik layar: data apa yang dipakai, bagaimana kualitas data diperiksa dan dirapikan, uji statistik apa saja yang dijalankan, dan bagaimana hasilnya diubah menjadi daftar kunjungan. Tujuannya supaya petugas Dinas Kesehatan (Dinkes), mitra di Dinas Sosial (Dinsos), dan tim teknologi informasi (TI) pemerintah daerah (pemda) mengerti kekuatan dan keterbatasan setiap angka yang tampil.

Versi mesin: antartitik 0.4.0 (Tahap 1, prototipe). Metode dikawal Departemen Ilmu Kesehatan Masyarakat, Fakultas Kedokteran Universitas Padjadjaran (FK Unpad).

1. Untuk apa antartitik

Pemda sudah memegang banyak data kesehatan yang memuat lokasi rumah: kasus Tuberkulosis (TB) dari Sistem Informasi Tuberkulosis (SITB), kasus Demam Berdarah Dengue (DBD) dan hasil Penyelidikan Epidemiologi (PE), peserta Cek Kesehatan Gratis (CKG) dengan hasil skrining diabetes melitus (DM), serta data keluarga Program Indonesia Sehat dengan Pendekatan Keluarga (PIS-PK) untuk perilaku hidup bersih dan sehat (PHBS). Data ini biasanya dipakai secara deskriptif, misalnya jumlah kasus per kelurahan. antartitik membangun "jembatan" dari data deskriptif itu ke pertanyaan analitik yang langsung berguna di lapangan: apakah kejadian menular dari rumah ke rumah, di mana rantainya, dan rumah mana yang perlu didatangi lebih dulu.

Untuk setiap penyakit dan perilaku, mesin menjawab tiga pertanyaan yang sama: (1) berkelompok? apakah rumah kasus lebih berdekatan daripada yang diharapkan; (2) ikut waktu? apakah kasus yang berdekatan juga terjadi dalam selang waktu yang pendek, jejak khas penularan; (3) masih tersisa? apakah pengelompokan itu masih ada setelah lingkungan dan kemiskinan diperhitungkan. Setelah itu mesin mencari letak klaster dan kantong, lalu menyusun sasaran kunjungan dan panduan lapangan Excel.

1. BacaExcel atau CSV apa adanya, dari Dinkes dan dinas lain
2. Periksa dan rapikankolom, data ganda, koordinat, tanggal, identitas dibuang
3. Ujitiga pertanyaan, klaster, kantong, per kelurahan
4. Bergeraksasaran berlapis, paket kerja, panduan lapangan Excel

2. Data yang dipakai

Tidak semua pemda punya data yang lengkap. Karena itu antartitik dirancang bertingkat: data Dinkes saja sudah cukup untuk mulai, dan data dinas lain menambah ketajaman. Data Dinkes menjadi "pintu masuk"; hasil analisis pertama itulah yang menjadi alasan untuk meminta rekap dari Dinsos, Disdukcapil, atau dinas tata ruang.

DataPemilikDipakai untukKeharusan
Data kejadian: kasus TB (SITB), kasus DBD dan PE, peserta CKG, keluarga PIS-PKDinkesTitik atau alamat rumah kejadian, tanggal, dan indikatorWajib
Titik bangunan (Google Open Buildings)Disiapkan tim antartitik, data terbukaRumah pembanding, kepadatan permukiman, calon rumah yang dikunjungiWajib (sudah tersedia untuk wilayah uji coba)
Batas desa/kelurahan (sumber Badan Pusat Statistik, BPS)Disiapkan tim antartitik, data terbukaMenempatkan alamat ke kelurahan, analisis per kelurahan, memeriksa titik di luar wilayahSangat dianjurkan
Nama jalan dan fasilitas kesehatan (OpenStreetMap)Disiapkan tim antartitik, data terbukaMemberi titik perkiraan pada baris yang hanya beralamatOpsional
Rekap Data Tunggal Sosial Ekonomi Nasional (DTSEN) per desa/kelurahanDinsosKovariat kemiskinan (persen keluarga desil 1 sampai 4)Opsional
Rekap kependudukan per desa/kelurahan (jumlah kepala keluarga dan penduduk)Dinas Kependudukan dan Pencatatan Sipil (Disdukcapil)Menyetarakan jumlah rumah tangga per bangunan, laju per kelurahanOpsional
Data lingkungan dari citra satelit lain (genangan, ruang hijau, tinggi bangunan)Disiapkan tim antartitikKovariat lingkungan tambahanTahap berikutnya

Data apa dipakai analisis yang mana

Tidak semua analisis memakai data penginderaan jauh. Uji Knox, misalnya, cukup memakai lokasi dan tanggal kasus. Tabel berikut memetakan kebutuhan data setiap analisis.

AnalisisData kejadianTitik bangunan (citra satelit)DTSENData lain
Berkelompok? (pelabelan acak)yaya, sebagai rumah pembanding (TB, DBD)tidakuntuk DM dan PHBS pembandingnya peserta atau keluarga lain
Ikut waktu? (Knox)ya, lokasi dan tanggaltidaktidak
Masih tersisa? (uji sisa)yaya, kepadatan permukimanya, bila adagenangan dan lapisan lain (tahap berikutnya)
Di dalam rumah: kasus serumahya, titik rumahya, rumah tangga per bangunantidak
Di dalam rumah: ICCya, anggota serumah dengan hasil positif dan negatifopsional (menetapkan rumah)tidaknomor KK bila ada
Klaster ruang-waktuyatidaktidak
Kantong DM dan PHBSyatidaktidak
Sasaran TB lapis 1 sampai 4, daftar PE DBDyaya, daftar rumah yang didatangitidak
Sasaran TB lapis 5yayaya, bila ada
Per kelurahan (laju, Moran's I, LISA)ya, cukup alamatopsional (perkiraan penduduk)opsionalbatas kelurahan BPS, penduduk Disdukcapil
Titik perkiraan dari alamatalamatyatidaknama jalan OpenStreetMap

Jadi bila Dinkes belum punya data kemiskinan, analisis tetap berjalan. Yang berkurang hanya uji sisa dan lapis 5, karena tinggal memakai kepadatan permukiman dari titik bangunan; kovariat yang dilewati dicatat di laporan data.

Rekap DTSEN dan rekap kependudukan cukup dalam bentuk agregat per desa/kelurahan, tanpa data perorangan. Bentuk ini lebih mudah diberikan dinas pemilik data karena tidak memuat data pribadi. Data per rukun warga (RW) atau per rumah tangga baru diminta bila hasil tahap awal sudah dipercaya, dengan Perjanjian Kerja Sama (PKS) dan penilaian dampak pelindungan data pribadi (DPIA).

3. Data penginderaan jauh yang dipakai

Di mana data ini disimpan dan di mana perhitungannya

Server antartitik hanya menjadi "rak penyimpanan": isinya halaman website, mesin Python, dan data wilayah terbuka (titik bangunan, batas kelurahan, nama jalan). Perhitungannya berlangsung di "dapur" milik setiap pengguna, yaitu browser di laptop petugas. Saat analisis dijalankan, mesin dan data wilayah diunduh ke browser, lalu dihitung di sana. Data pasien tidak pernah disimpan di server. Ini berbeda dengan Google Colab, yang menghitung di server Google.

Google Open Buildings v3: titik bangunan

Pemda jarang memiliki peta seluruh bangunan. antartitik memakai Google Open Buildings versi 3, yaitu poligon atap bangunan yang dideteksi model pembelajaran mesin dari citra satelit beresolusi 50 cm, dengan inferensi Mei 2023 dan lisensi Creative Commons Attribution 4.0 (CC BY 4.0).1,2 Setiap bangunan membawa skor keyakinan 0,65 sampai 1. Dari setiap poligon, antartitik mengambil titik tengah, luas atap, skor keyakinan, dan kode desa/kelurahan tempat bangunan itu berada. Data ini disiapkan sekali per wilayah oleh tim antartitik, sehingga petugas tidak perlu mengolah citra satelit sendiri.

Sebelum dipakai sebagai rumah, bangunan disaring: (1) skor keyakinan di bawah 0,70 dibuang karena lebih sering salah deteksi; (2) atap lebih kecil dari 12 m² dianggap bukan rumah (kandang, warung, gudang kecil); (3) atap lebih besar dari 1.500 m² dianggap bukan rumah (pabrik, pasar, sekolah, kantor). Jumlah yang dibuang pada setiap langkah dicatat di laporan data.

Seberapa lengkap Open Buildings? Google sendiri menyebut datanya memuat bangunan yang terlewat dan bangunan yang salah terdeteksi. Kelemahan terbesarnya ada di permukiman padat yang atapnya menyambung tanpa batas jelas, karena beberapa rumah bisa terbaca sebagai satu poligon. Bangunan sangat kecil juga mudah terlewat, dan untuk sebagian lokasi citranya sudah berumur beberapa tahun.2 Penelitian di lima kota (Accra, Nairobi, Caracas, Berlin, Houston) menemukan pola yang serupa: kelengkapan tinggi di kota yang tertata, lebih rendah di permukiman informal.3 Jadi kelengkapan Open Buildings berbeda antar kelurahan dan tidak bisa diringkas menjadi satu angka.

Bobot rumah tangga per bangunan

Masalah atap menyambung penting untuk antartitik, karena titik bangunan dipakai sebagai latar "tempat orang tinggal". Kalau kampung padat kekurangan titik, latar rumah pembanding di sana menjadi terlalu jarang, dan hasil uji bisa menyimpang. Karena itu setiap bangunan diberi perkiraan jumlah rumah tangga dari luas atapnya: luas atap dibagi 60 m², dibulatkan, paling sedikit 1 dan paling banyak 8 rumah tangga per atap. Bila rekap Disdukcapil diunggah, perkiraan ini disetarakan per desa/kelurahan supaya totalnya sama dengan jumlah kepala keluarga (KK) yang tercatat.

Bobot ini dipakai di tiga tempat: (1) peluang sebuah bangunan terpilih menjadi rumah pembanding sebanding dengan jumlah rumah tangganya; (2) kepadatan permukiman dihitung sebagai jumlah rumah tangga dalam radius 100 m; (3) kuota skrining diisi menurut perkiraan jumlah orang, bukan jumlah atap. Rasio KK per bangunan di setiap kelurahan juga ditampilkan sebagai tabel kelengkapan, sehingga petugas bisa melihat kelurahan mana yang datanya paling perlu dicek di lapangan.

Batas desa/kelurahan

Batas desa/kelurahan diambil dari Common Operational Dataset of Administrative Boundaries (COD-AB) Indonesia, dengan sumber BPS, yang diterbitkan Office for the Coordination of Humanitarian Affairs (OCHA) melalui Humanitarian Data Exchange (HDX). Batas ini dibuat April 2020, ditinjau OCHA pada Oktober 2025, dan berlisensi Creative Commons Attribution for Intergovernmental Organisations (CC BY-IGO).4 Kode wilayahnya memakai kode BPS. Bila data Dinkes memakai kode berformat lain (misalnya kode Kemendagri), mesin mengenalinya dan menempatkan baris itu ke kelurahan berdasarkan nama kelurahan atau alamatnya.

Nama jalan dan fasilitas kesehatan

Nama jalan dan lokasi fasilitas kesehatan diambil dari OpenStreetMap, peta dunia yang dibuat dan diperbarui komunitas, dengan lisensi Open Database License (ODbL).5 Ini bukan data penginderaan jauh, tetapi bahan untuk mesin pencari titik dari alamat (bagian 4). Kelengkapan nama jalan, terutama nama gang, berbeda antar kelurahan.

Turunan yang dihitung mesin

Dari titik bangunan, mesin menghitung kepadatan permukiman (rumah tangga dalam radius 100 m) untuk setiap rumah kasus dan rumah pembanding. Kepadatan ini masuk sebagai kovariat lingkungan pada uji sisa, karena permukiman padat memudahkan penularan TB lewat udara dan juga membuat rumah lebih berdekatan.

Tahap berikutnya

Lapisan lingkungan berikut sedang disiapkan per wilayah: tinggi dan perubahan bangunan dari Open Buildings 2.5D Temporal (kehadiran, perkiraan jumlah, dan tinggi bangunan per tahun 2016 sampai 2023 dengan resolusi efektif 4 m dari citra Sentinel-2),6 genangan dan badan air untuk DBD, ruang terbuka hijau, serta jarak ke fasilitas kesehatan. Pada contoh sintetis di website, kolom genangan, indeks lingkungan pangan, dan jarak puskesmas masih berupa data buatan untuk latihan.

4. Kualitas data dan perapian otomatis

Setiap Dinkes punya bentuk Excel sendiri, dan petugas sudah cukup sibuk. Karena itu berkas dibaca apa adanya, lalu diperiksa dan dirapikan oleh mesin dalam empat langkah: (1) kenali, nama kolom dicocokkan dengan kamus nama kolom dan kamus format yang sudah dikenal, sedangkan kolom yang namanya tidak dikenal dibaca isinya; (2) rapikan, masalah yang umum ditemukan diperbaiki atau dipisahkan; (3) laporkan, setiap perubahan dicatat beserta jumlah barisnya; (4) ingat, pemetaan kolom bisa disimpan sebagai profil format sehingga berkas bulan berikutnya langsung terbaca.

Apa saja yang diperiksa

PemeriksaanYang dicariTindakan mesin
Letak tabelBaris judul laporan di atas tabel, beberapa sheetBaris judul dilewati; sheet berisi tabel dipilih otomatis
Peran kolomNama kolom yang berbeda-beda ("Tgl Diagnosis", "lat", "Koordinat Y"); kolom yang hanya bisa dikenali dari isinya (16 digit seperti NIK, nomor HP, tanggal, koordinat, alamat, isian Ya/Tidak)Peran ditebak dan ditampilkan; petugas bisa mengubahnya di panel Pemeriksaan data
Baris kosong dan baris totalBaris tanpa isi, baris "TOTAL" atau "JUMLAH"Dibuang
Data gandaOrang yang sama tercatat lebih dari sekali, misalnya karena rujukan atau pindah fasilitas: NIK sama, atau nama dan tanggal lahir sama, atau nama dan alamat sama; nomor register yang samaTB: disatukan bila selang tanggalnya 180 hari atau kurang. DBD: 30 hari atau kurang. Kasus berulang yang lebih jauh jaraknya tetap dihitung. DM dan PHBS: data terbaru dipertahankan
Format koordinatKolom terpisah, kolom gabungan, tautan Google Maps, derajat-menit-detik, koma desimalSemua diubah ke derajat desimal
Koordinat keliruLintang dan bujur tertukar; angka yang kehilangan titik desimal di Excel (misalnya -6914523); titik di luar IndonesiaDibalik, dikembalikan ke skala yang benar, atau diperlakukan sebagai tanpa koordinat
Koordinat menumpukLima baris atau lebih dengan koordinat yang persis sama; biasanya titik puskesmas, posyandu, atau kantor tempat data dicatat, bukan rumahTidak dipakai untuk analisis antar titik; tetap masuk analisis per kelurahan bila kelurahannya diketahui
Titik di luar wilayahTitik di luar batas desa/kelurahan yang dipakai (tinggal di kabupaten/kota tetangga, atau salah ketik)Tidak ikut analisis antar titik; jumlahnya dilaporkan
Alamat tanpa koordinatBaris yang hanya punya alamatNama kelurahan dicocokkan secara lokal di komputer petugas (alamat tidak dikirim ke layanan luar); nomor RT dan RW diambil dari alamat; baris masuk analisis per kelurahan
Kode wilayah beda formatKode kelurahan yang tidak cocok dengan kode batas wilayahKelurahan ditentukan dari nama kelurahan atau alamat
TanggalFormat hari-bulan-tahun, nama bulan Indonesia ("14 Januari 2024"), angka seri Excel; tanggal sebelum tahun 2000 atau di masa depanDibaca ke satu format; tanggal mustahil dibuang untuk TB dan DBD, dikosongkan untuk data lain
Isian Ya/TidakY, ya, 1, √, ada, T, tdk, 0Diseragamkan menjadi Ya atau Tidak
IdentitasNama, NIK, nomor HP, alamat, nomor BPJS atau rekam medis, tanggal lahirDipakai untuk mencari data ganda, lalu dibuang sebelum analisis; tanggal lahir diubah menjadi umur; ID diganti kode samaran

Laporan kerapian

Setelah berkas dipilih, panel Pemeriksaan data menampilkan jumlah baris yang punya titik rumah, yang hanya sampai desa/kelurahan, dan yang tidak bisa dipakai, beserta setiap langkah perapian dan jumlah barisnya. Laporan yang sama ikut tercantum pada hasil analisis. Laporan ini sebaiknya dibaca sebelum hasil uji: bila banyak baris tanpa koordinat atau banyak koordinat menumpuk, hasil antar titik hanya mewakili sebagian kasus, dan perbaikan pencatatan lokasi di puskesmas menjadi langkah pertama yang paling bermanfaat.

Profil format

Pemetaan kolom bisa disimpan sebagai profil format (berkas JSON). Profil hanya berisi nama kolom dan perannya, tanpa isi data, sehingga aman dibagikan ke daerah lain yang memakai bentuk Excel yang sama, misalnya ekspor SITB. Profil yang terakhir dipakai juga disimpan di browser petugas, sehingga berkas berbentuk sama bulan depan langsung terbaca tanpa diatur ulang. Dengan cara ini kamus format antartitik bertambah setiap kali ada bentuk berkas baru.

Mesin pencari titik dari alamat

Banyak data Dinkes hanya berisi alamat. Mengirim alamat pasien ke layanan pencari lokasi di luar (Google, OpenStreetMap Nominatim, dan sejenisnya) berarti mengirim data pribadi ke pihak lain, dan untuk alamat gang atau RT/RW hasilnya sering kurang tepat. Karena itu antartitik mencari titiknya secara lokal di komputer petugas: (1) alamat ditempatkan ke desa/kelurahan; (2) nama jalan atau gang diambil dari teks alamat, misalnya "Jl. Mawar No. 5" atau "Gg. Kenanga II RT 03/RW 05"; (3) nama itu dicocokkan dengan nama jalan OpenStreetMap di kelurahan yang sama, cocok persis setelah dirapikan atau mirip sedikitnya 85%; (4) titik perkiraan ditetapkan pada satu bangunan yang dipilih acak di sepanjang jalan itu. Pilihan acaknya tetap untuk setiap baris, jadi hasilnya bisa diulang.

Pada data sintetis, galat titik perkiraan sekitar 120 m (median) dan sekitar 290 m pada persentil 90. Ketelitian ini cukup untuk analisis pada jarak 200 sampai 400 m dan per kelurahan, tetapi belum cukup untuk jarak 50 m atau untuk menentukan rumah kasus. Supaya pemusatan titik di sekitar jalan bernama tidak terbaca sebagai pengelompokan kasus, rumah pembanding untuk kasus bertitik perkiraan dibuat dengan proses yang sama. Untuk kasus seperti ini, sasaran kunjungan mengarahkan petugas ke alamat aslinya di data Dinkes, bukan ke bangunan perkiraan. Bila lebih dari 5% titik berupa perkiraan, ringkasan hasil memberi peringatan.

Tingkat lokasi setiap baris

Setiap baris diberi keterangan tingkat lokasi: titik rumah (koordinat rumah dipakai), jalan (perkiraan) (titik dari nama jalan), kelurahan atau kelurahan (dari alamat) (hanya diketahui kelurahannya), kelurahan (koordinat menumpuk), dan tidak diketahui. Uji antar titik memakai baris bertitik rumah dan bertitik perkiraan; uji kasus serumah hanya memakai titik rumah; analisis per kelurahan memakai semuanya.

Jalan paling teliti untuk jangka panjang adalah mencatat titik rumah saat kunjungan. Panduan lapangan Excel kini punya kolom "Titik rumah" untuk angka koordinat dari Google Maps atau tautan bagikan lokasi WhatsApp, yang langsung bisa dibaca mesin.

5. Tiga pertanyaan antar titik dan di dalam rumah

5.1 Berkelompok? Uji pelabelan acak

Bayangkan semua rumah kasus dan sejumlah rumah pembanding ditandai di peta, lalu label "kasus" dikocok dan ditempelkan secara acak ke rumah-rumah itu. Kalau kasus memang tidak berkelompok, jumlah pasangan kasus yang berdekatan setelah dikocok akan mirip dengan yang teramati. Kalau yang teramati jauh lebih banyak, kasus berkelompok melebihi pola permukiman. Inilah uji pelabelan acak (random labelling), yang membandingkan kasus dengan populasi pembanding yang tidak merata.7

Rumah pembanding diambil acak dari titik bangunan, lima kali jumlah kasus, dengan peluang sebanding perkiraan rumah tangga per bangunan; rumah kasus sendiri tidak dijadikan pembanding. Untuk DM dan PHBS, pembandingnya adalah peserta skrining atau keluarga lain yang dikunjungi, karena hanya mereka yang diperiksa. Pasangan dihitung pada beberapa jarak (misalnya 50, 100, 200, dan 400 m) dan pengocokan diulang 199 kali. Hasilnya berupa rasio (pasangan teramati dibagi rata-rata pasangan hasil kocokan) dan nilai p (proporsi kocokan yang menghasilkan pasangan sebanyak atau lebih banyak dari yang teramati).

5.2 Ikut waktu? Uji Knox

Penularan meninggalkan jejak khas: kasus yang berdekatan secara jarak cenderung juga berdekatan secara waktu. Uji Knox menghitung pasangan kasus yang dekat jarak sekaligus dekat waktu, lalu membandingkannya dengan pasangan yang didapat bila tanggal kasus diacak di antara lokasi yang sama.8 Karena lokasinya tetap, uji ini tidak terpengaruh pola permukiman; yang diuji hanya kaitan antara jarak dan waktu. Pengacakan diulang 999 kali. Untuk TB dipakai jarak 50, 100, dan 200 m dengan selang 30, 90, 180, dan 365 hari; untuk DBD selang 7, 14, 21, dan 30 hari, sesuai masa inkubasi dan siklus nyamuk. Untuk DM, uji Knox dijalankan sebagai pembanding: penyakit tidak menular seharusnya tidak memperlihatkan jejak ini.

5.3 Masih tersisa? Uji pelabelan acak bersyarat kovariat

Kasus bisa berkelompok bukan karena menular, tetapi karena rumah-rumah yang berdekatan berbagi lingkungan dan kemiskinan yang sama. Uji sisa memisahkan keduanya. Pertama, regresi logistik memperkirakan peluang setiap rumah menjadi rumah kasus dari kovariatnya (misalnya persen keluarga desil 1 sampai 4 DTSEN dan kepadatan permukiman). Kedua, label kasus dikocok ulang, tetapi kali ini setiap rumah mendapat label kasus sesuai peluangnya sendiri. Bila pengelompokan yang teramati masih lebih banyak dari hasil kocokan bersyarat ini, ada pengelompokan yang tersisa: untuk TB dan DBD mengarah ke penularan dari rumah ke rumah atau faktor lain yang belum diukur; untuk PHBS mengarah ke "penularan" perilaku antar tetangga. Mesin juga melaporkan porsi kelebihan pasangan yang dijelaskan kovariat dan rasio odds setiap faktor.

JenisJarak berkelompokKnox: jarak dan selangKovariat uji sisa
TB50, 100, 200, 400 m50/100/200 m; 30/90/180/365 harikemiskinan DTSEN, kepadatan permukiman
DBD50, 100, 200, 400 m50/100/200 m; 7/14/21/30 harigenangan, kepadatan permukiman, kemiskinan DTSEN
DM100, 200, 400 m100/200 m; 30/90/180 hari (pembanding)umur, indeks lingkungan pangan, kemiskinan DTSEN
PHBS50, 100, 200 mtidak dipakai (kunjungan sekali)kemiskinan DTSEN, genangan, kepadatan permukiman

Kovariat yang belum tersedia untuk suatu wilayah dilewati, dan hal ini dicatat di laporan data.

5.4 Di dalam rumah: kasus serumah dan ICC

Tiga pertanyaan di atas melihat hubungan antar rumah. Penularan TB juga sangat ditentukan oleh kontak di dalam rumah: meta-analisis investigasi kontak menemukan prevalensi TB 3,1% di antara kontak serumah di negara berpendapatan rendah dan menengah.9 Karena itu mesin juga melihat ke dalam rumah, dengan dua cara sesuai bentuk datanya.

Data kasus saja (SITB, laporan DBD): uji kasus serumah. Karena anggota rumah yang tidak sakit tidak tercatat, kemiripan antar anggota serumah tidak bisa diukur langsung. Yang bisa diuji adalah apakah dua kasus atau lebih tinggal di bangunan yang sama lebih sering daripada bila kasus tersebar acak di antara rumah tangga. Rumah kasus adalah bangunan terdekat dalam 15 m dari titik rumahnya, dan harapan acak dihitung dengan menempatkan kasus ke bangunan dengan peluang sebanding jumlah rumah tangganya (999 kali). Pasien yang sama sudah disatukan pada tahap perapian, sehingga pasangan serumah bukan berasal dari satu orang yang tercatat dua kali.

Data dengan anggota serumah yang hasilnya tercatat semua (misalnya CKG satu keluarga, atau hasil investigasi kontak): intraclass correlation coefficient (ICC). ICC adalah bagian variasi kejadian yang berasal dari perbedaan antar rumah tangga. ICC 0 berarti anggota serumah tidak lebih mirip daripada orang dari rumah lain; makin besar, makin kuat penumpukannya di dalam rumah. Mesin menghitung dua bentuk: (1) penaksir analisis varians (ANOVA) untuk data biner, dengan uji permutasi dan selang kepercayaan dari bootstrap rumah tangga;10 (2) model logistik bertingkat dengan intersep acak rumah tangga, yang dinyatakan sebagai ICC skala laten σ²/(σ² + π²/3)11 dan median odds ratio (MOR), yaitu rasio odds median antara dua orang yang sama kondisinya tetapi tinggal di rumah berbeda.12 Rumah tangga ditetapkan dari nomor KK yang sudah disamarkan, atau dari bangunan yang sama. ICC baru dihitung bila sedikitnya 30 rumah punya dua anggota atau lebih yang diperiksa.

6. Klaster, kantong, dan analisis per kelurahan

Tiga pertanyaan di atas menjawab "apakah", untuk seluruh wilayah. Petugas juga perlu tahu "di mana". Untuk itu ada tiga alat lokal.

6.1 Klaster ruang-waktu

Kasus dikelompokkan dengan cara mirip DBSCAN (density-based spatial clustering of applications with noise): sebuah kasus menjadi inti klaster bila punya sedikitnya dua tetangga dalam jarak dan selang waktu tertentu, dan klaster dibentuk dari inti yang saling terhubung.13 Untuk TB dipakai 100 m dan 120 hari; untuk DBD 100 m dan 21 hari. Setiap calon klaster lalu diuji dengan uji Knox lokal (taraf 0,10, karena tujuannya penapisan) supaya permukiman yang sekadar padat tidak ikut terbaca sebagai rantai penularan. Klaster berisi sedikitnya tiga kasus. Klaster yang anggotanya berada di dua pemda ditandai sebagai klaster lintas batas, karena penularan tidak mengenal batas administrasi.

6.2 Kantong: statistik pindai spasial

Untuk DM (kasus yang belum ditindaklanjuti) dan PHBS (keluarga dengan masalah perilaku), mesin mencari kantong, yaitu lingkaran tempat proporsi masalahnya lebih tinggi dari rata-rata wilayah. Metodenya statistik pindai spasial Bernoulli, seperti pada perangkat lunak SaTScan.14 Lingkaran digeser dan diperbesar di sekitar setiap rumah (radius sampai 250 m untuk PHBS dan 600 m untuk DM), lalu kemungkinan (likelihood) setiap lingkaran dibandingkan dengan 199 data acak. Kantong yang bermakna (p<0,05) menjadi sasaran kader dan promosi kesehatan.

6.3 Analisis per desa/kelurahan

Bila data hanya sampai desa/kelurahan, atau untuk meringkas data titik, mesin menghitung laju kejadian per kelurahan. Kelurahan berpenduduk kecil mudah menghasilkan laju yang melonjak hanya karena satu atau dua kasus, sehingga laju distabilkan dengan empirical Bayes (laju kelurahan kecil ditarik mendekati rata-rata wilayah).15 Selanjutnya Moran's I menguji apakah kelurahan berlaju tinggi cenderung bertetangga,16 dan Local Indicators of Spatial Association (LISA) menunjukkan kelurahan mana yang menjadi pusat kantong tinggi-tinggi atau rendah-rendah.17 Jumlah penduduk diambil dari rekap Disdukcapil; bila belum ada, diperkirakan dari jumlah rumah tangga di titik bangunan dikali rata-rata orang per rumah.

7. Dari hasil ke lapangan

7.1 Sasaran skrining TB berlapis

Bila pemda punya kuota skrining (misalnya 50.000 orang), rumah sasaran diisi berurutan dari lapis yang paling dekat dengan sumber penularan:

  1. Lapis 1, serumah kasus: rumah kasus indeks, yaitu kasus yang didiagnosis dalam 12 bulan terakhir.
  2. Lapis 2, kontak terdekat: rumah terdekat dari setiap kasus indeks sampai sedikitnya 20 kontak per kasus, mengikuti Petunjuk Teknis Investigasi Kontak Pasien TBC.18
  3. Lapis 3, tetangga dekat: rumah lain dalam 50 m dari kasus indeks, didahulukan yang paling banyak kasus di sekitarnya.
  4. Lapis 4, klaster aktif: rumah dalam 100 m dari anggota klaster ruang-waktu yang masih aktif.
  5. Lapis 5, kantong berisiko tanpa kasus tercatat: rumah lebih dari 200 m dari kasus tercatat, tetapi lingkungan dan kemiskinannya mirip rumah kasus (dari model regresi logistik uji sisa, dihaluskan dalam 100 m). Di sinilah kasus yang belum ditemukan paling mungkin berada.

Kuota diisi menurut perkiraan jumlah orang: jumlah rumah tangga per bangunan dikali rata-rata orang per rumah tangga (bawaan 3,7, dapat diganti dengan angka setempat). Rumah kasus selalu dihitung sedikitnya satu rumah tangga. Untuk kasus yang titiknya hanya perkiraan dari nama jalan, lapis 1 dan 2 tidak menunjuk bangunan tertentu; daftar kunjungan berisi baris "alamat kasus" dan "kontak kasus" yang mengarahkan petugas ke alamat aslinya di data Dinkes, dicocokkan lewat ID samaran.

7.2 DBD: daftar rumah Penyelidikan Epidemiologi

Untuk setiap kasus DBD baru dalam 14 hari terakhir, mesin menyusun daftar rumah dalam radius 100 m, sedikitnya 20 rumah per kasus. Rumah yang berada di sekitar lebih dari satu kasus baru didahulukan.

7.3 DM dan PHBS: kunjungan kantong

Kasus DM yang belum ditindaklanjuti dan keluarga dengan masalah PHBS didaftar, dengan yang berada di dalam kantong bermakna didahulukan.

7.4 Paket kerja dan panduan lapangan Excel

Rumah terpilih dibagi menjadi paket kerja per desa/kelurahan (bawaan 25 rumah per paket, 20 untuk DBD). Urutan kunjungan dalam paket mengikuti kurva Hilbert, yaitu lintasan yang menjaga rumah berurutan tetap berdekatan, sehingga petugas tidak bolak-balik. Panduan lapangan Excel berisi lembar Petunjuk, Ringkasan, Paket kerja (kemajuan terhitung otomatis dari kolom status), Daftar kunjungan (tautan Google Maps dan kolom isian petugas, termasuk kolom "Titik rumah"), Rekap kelurahan, dan Label metode. Titik rumah yang diisi saat kunjungan dipindahkan pengelola program ke data kasus Dinkes, sehingga analisis bulan berikutnya makin tepat.

8. Membaca hasil dengan hati-hati

  • Hasil statistik menunjukkan di mana petugas sebaiknya melihat lebih dulu, bukan kepastian penularan. Keputusan tetap di tangan petugas dan program.
  • Kualitas hasil mengikuti kualitas lokasi. Bila banyak baris tanpa koordinat atau koordinatnya menumpuk di puskesmas, hasil antar titik hanya mewakili sebagian kasus. Baca laporan kerapian lebih dulu.
  • Kelengkapan Open Buildings berbeda antar kelurahan. Bobot rumah tangga mengurangi penyimpangan, tetapi tidak menghapusnya; rasio KK per bangunan yang sangat tinggi perlu dicek di lapangan.
  • Klaster ruang-waktu TB adalah alat penapisan. Pada data sintetis, sekitar 60 sampai 80% anggota klaster yang ditemukan memang anggota rantai penularan; sisanya klaster semu di permukiman padat.
  • Uji Knox dapat terpengaruh perubahan jumlah penduduk yang tidak merata antar wilayah dalam periode panjang. Untuk periode lebih dari dua tahun, bacalah hasilnya bersama akademisi pendamping.
  • Batas desa/kelurahan memakai batas tahun 2020. Pemekaran atau perubahan nama setelahnya perlu disesuaikan.
  • Titik perkiraan dari nama jalan bergantung pada kelengkapan nama jalan OpenStreetMap; alamat yang nama jalannya tidak ditemukan tetap hanya masuk analisis per kelurahan.
  • Aturan penyatuan data ganda (misalnya nama dan alamat sama dalam 180 hari untuk TB) perlu dicocokkan dengan cara pencatatan SITB di setiap Dinkes.
  • Data sintetis di website hanya untuk latihan dan validasi. Uji dengan data asli dilakukan bersama Dinkes dengan PKS dan DPIA.

9. Validasi mesin

Setiap versi mesin diuji pada data sintetis yang polanya sudah diketahui, dan baru dirilis bila semua pemeriksaan lulus. Mesin harus menemukan pola yang ditanam (penularan TB dan DBD, klaster lintas batas Kota dan Kabupaten Bekasi, pengaruh sosial merokok, kantong layanan DM) dan tidak menemukan pola yang tidak ditanam (DM dan jamban tidak menular). Galat tipe I juga diperiksa pada data tanpa pola. Pemeriksaan tambahan mencakup pembacaan Excel gaya pemerintah, penempatan alamat ke kelurahan, kemampuan lapis 5 mengarah ke kasus yang belum ditemukan, panduan lapangan Excel, perapian otomatis (baris total, pasien ganda, titik puskesmas, tanggal mustahil, isian Ya/Tidak, kode beda format), profil format yang tidak memuat isi data, bobot rumah tangga di kampung beratap menyambung, ICC dan uji kasus serumah (nilai yang ditanam ditemukan kembali, galat tipe I wajar), serta mesin pencari titik dari alamat (galat median dan galat tipe I uji berkelompok pada kasus acak). Versi 0.4.0: 62 dari 62 pemeriksaan lulus.

10. Status pengembangan

Bagian ini diperbarui setiap kali mesin berubah, supaya pemakai tahu mana yang sudah bisa dipakai dan mana yang belum.

FiturStatusKeterangan
Membaca Excel dan CSV apa adanyaTersediaBaris judul, sheet, koordinat campur, tanggal Indonesia
Perapian otomatis dan profil formatTersediaLaporan kerapian di panel Pemeriksaan data
Tiga pertanyaan, klaster ruang-waktu, kantong, per kelurahanTersedia
Di dalam rumah: uji kasus serumah dan ICCTersediaICC butuh data anggota serumah dengan hasil positif dan negatif
Sasaran TB berlapis, PE DBD, paket kerja, panduan lapangan ExcelTersediaTermasuk kolom "Titik rumah"
Bobot rumah tangga per bangunan dan kalibrasi jumlah KKTersedia
Mesin pencari titik dari alamatTersediaBekerja penuh setelah data nama jalan wilayah dipasang
Data wilayah asli Kota Bandung, Kota Cimahi, Kota Bekasi, Kabupaten Bekasi (titik bangunan, batas kelurahan, nama jalan, fasilitas kesehatan)Sedang disiapkanDiolah dengan notebook Colab "Siapkan data wilayah"; sementara ini pakai berkas latihan
Lapisan citra lain: tinggi bangunan (Open Buildings 2.5D), genangan, vegetasi, suhu permukaanTahap berikutnyaAkan masuk sebagai kovariat uji sisa dan lapis 5
Jarak ke fasilitas kesehatan sebagai kovariatTahap berikutnyaLokasi fasilitas ikut diambil notebook, belum dipakai mesin
Batas RW (Satuan Lingkungan Setempat BPS)Tahap berikutnyaKetersediaan dan lisensinya sedang dicek
Format data investigasi kontak TBCTahap berikutnyaUntuk ICC TB dan hasil investigasi kontak
Jalur pendampingan (server di Indonesia) dan layanan API dalam DockerTahap berikutnyaBersama PKS dan DPIA dengan pemda mitra
Uji dengan data asli bersama DinkesTahap berikutnyaTermasuk mencocokkan aturan data ganda SITB

11. Privasi dan tata kelola

Pada jalur mandiri, berkas dibaca dan dianalisis dengan Python di dalam browser petugas (Pyodide). Berkas tidak dikirim ke server mana pun; yang diunduh dari internet hanya mesin, pustaka Python, data wilayah terbuka, dan petak peta dasar OpenStreetMap. Pada jalur pendampingan, data yang sudah disamarkan dianalisis bersama akademisi di server yang berlokasi di Indonesia, dengan PKS dan DPIA sesuai Undang-Undang Nomor 27 Tahun 2022 tentang Pelindungan Data Pribadi.

Kolom identitas dibuang sebelum analisis dan ID diganti kode samaran yang dibuat dengan "garam" (teks rahasia) milik Dinkes. Namun, koordinat rumah tetap bisa menunjuk satu keluarga. Jadi data hasil penyaringan adalah data bersamaran (pseudonim), bukan anonim, dan daftar kunjungan hanya untuk petugas.

12. Untuk tim IT pemda

Seluruh rumus analisis ada di satu paket Python bernama antartitik, yang sama persis dengan yang berjalan di website. Paket ini membutuhkan Python 3.10 ke atas dengan numpy, pandas, scipy, shapely, python-calamine (pembaca Excel), dan XlsxWriter (penulis Excel). Ada tiga cara memakainya, dari yang paling ringan:

  1. Website dipasang di server pemda (intranet). Folder website adalah situs statis: tanpa database dan tanpa backend, karena analisis berjalan di browser petugas.
  2. Skrip Python terjadwal. Misalnya setiap bulan membaca ekspor SITB dari satu folder dan menghasilkan panduan lapangan Excel untuk setiap puskesmas.
  3. Layanan antarmuka pemrograman (API) dalam kontainer Docker (Tahap 2), supaya sistem pemda yang ditulis dengan PHP, Java, atau bahasa lain cukup mengirim data dan menerima hasil.

Modul baru versi 0.4: dalam_rumah (ICC dan uji kasus serumah) dan cari_titik (mesin pencari titik dari alamat). Paket, catatan teknis, dan uji validasinya diserahkan oleh tim FK Unpad kepada pemda mitra.

13. Istilah

Rumah pembanding (latar)
Rumah yang mewakili tempat orang tinggal, diambil acak dari titik bangunan, untuk dibandingkan dengan rumah kasus.
Permutasi atau kocokan
Pengulangan acak (199 atau 999 kali) untuk melihat seberapa sering pola teramati muncul secara kebetulan.
Rasio
Jumlah pasangan teramati dibagi jumlah pasangan yang diharapkan bila acak. Rasio 2 berarti dua kali lipat.
Nilai p
Peluang mendapatkan pola sekuat yang teramati bila sebenarnya acak. Makin kecil, makin kecil kemungkinan pola itu kebetulan; antartitik memakai batas 0,05 untuk uji seluruh wilayah.
Kovariat
Faktor yang ikut diperhitungkan, misalnya kemiskinan DTSEN atau kepadatan permukiman.
Rasio odds (RO)
Seberapa besar peluang menjadi rumah kasus berubah untuk setiap kenaikan satu simpangan baku kovariat.
Klaster ruang-waktu
Kumpulan kasus yang berdekatan jarak dan waktunya, kandidat rantai penularan.
Kantong
Wilayah kecil dengan proporsi masalah yang lebih tinggi dari rata-rata wilayah.
Empirical Bayes
Cara menstabilkan laju kelurahan berpenduduk kecil dengan menariknya mendekati rata-rata wilayah.
LISA
Local Indicators of Spatial Association, penanda kelurahan yang menjadi pusat kantong tinggi atau rendah.
Skor keyakinan
Seberapa yakin model Open Buildings bahwa sebuah poligon adalah bangunan (0,65 sampai 1).
Bobot rumah tangga
Perkiraan jumlah rumah tangga di bawah satu atap, dari luas atap dan jumlah KK per kelurahan.
ICC
Intraclass correlation coefficient: bagian variasi kejadian yang berasal dari perbedaan antar rumah tangga.
MOR
Median odds ratio: rasio odds median antara dua orang yang sama kondisinya tetapi tinggal di rumah berbeda. MOR 1 berarti rumah tidak berpengaruh.
Titik perkiraan
Titik yang ditetapkan dari nama jalan di alamat, bukan dari koordinat rumah; ketelitiannya puluhan sampai ratusan meter.
Profil format
Berkas berisi nama kolom dan perannya, tanpa isi data, untuk membaca bentuk Excel yang sama secara otomatis.
Garam dan pseudonim
Garam adalah teks rahasia Dinkes untuk membuat kode samaran; data bersamaran (pseudonim) masih bisa dicocokkan kembali oleh pemegang garam.

14. Rujukan

  1. Sirko W, Kashubin S, Ritter M, et al. Continental-scale building detection from high resolution satellite imagery. arXiv. Preprint posted online July 26, 2021. arXiv:2107.12283
  2. Google Research. Open Buildings. Diakses November 2026. https://sites.research.google/gr/open-buildings/
  3. Okyere F, Lu M, Brunn A. Evaluating the quality of open building datasets for mapping urban inequality: a comparative analysis across 5 cities. arXiv. Preprint posted online August 18, 2025. arXiv:2508.12872
  4. OCHA Field Information Services Section. Indonesia: subnational administrative boundaries (COD-AB), sumber Badan Pusat Statistik. Humanitarian Data Exchange. Diakses November 2026. https://data.humdata.org/dataset/cod-ab-idn
  5. OpenStreetMap Foundation. Copyright and license. Diakses November 2026. https://www.openstreetmap.org/copyright
  6. Google Earth Engine Data Catalog. Open Buildings Temporal V1. Diakses November 2026. https://developers.google.com/earth-engine/datasets/catalog/GOOGLE_Research_open-buildings-temporal_v1
  7. Diggle PJ, Chetwynd AG. Second-order analysis of spatial clustering for inhomogeneous populations. Biometrics. 1991;47:1155-1163. https://eprints.lancs.ac.uk/id/eprint/20041/
  8. Knox EG. The detection of space-time interactions. J R Stat Soc Ser C Appl Stat. 1964;13(1):25-29. doi:10.2307/2985220
  9. Fox GJ, Barry SE, Britton WJ, Marks GB. Contact investigation for tuberculosis: a systematic review and meta-analysis. Eur Respir J. 2013;41(1):140-156. doi:10.1183/09031936.00070812
  10. Ridout MS, Demétrio CGB, Firth D. Estimating intraclass correlation for binary data. Biometrics. 1999;55(1):137-148. doi:10.1111/j.0006-341X.1999.00137.x
  11. Goldstein H, Browne W, Rasbash J. Partitioning variation in multilevel models. Understanding Statistics. 2002;1(4):223-231. doi:10.1207/S15328031US0104_02
  12. Merlo J, Chaix B, Ohlsson H, et al. A brief conceptual tutorial of multilevel analysis in social epidemiology: using measures of clustering in multilevel logistic regression to investigate contextual phenomena. J Epidemiol Community Health. 2006;60(4):290-297. doi:10.1136/jech.2004.029454
  13. Ester M, Kriegel HP, Sander J, Xu X. A density-based algorithm for discovering clusters in large spatial databases with noise. In: Proceedings of the Second International Conference on Knowledge Discovery and Data Mining (KDD-96). AAAI Press; 1996:226-231. https://www.osti.gov/biblio/421283
  14. Kulldorff M. A spatial scan statistic. Commun Stat Theory Methods. 1997;26(6):1481-1496. doi:10.1080/03610929708831995
  15. Marshall RJ. Mapping disease and mortality rates using empirical Bayes estimators. J R Stat Soc Ser C Appl Stat. 1991;40(2):283-294. doi:10.2307/2347593
  16. Moran PAP. Notes on continuous stochastic phenomena. Biometrika. 1950;37(1-2):17-23. doi:10.1093/biomet/37.1-2.17
  17. Anselin L. Local indicators of spatial association: LISA. Geogr Anal. 1995;27(2):93-115. doi:10.1111/j.1538-4632.1995.tb00338.x
  18. Direktorat Jenderal Pencegahan dan Pengendalian Penyakit, Kementerian Kesehatan RI. Petunjuk Teknis Investigasi Kontak Pasien TBC bagi Petugas Kesehatan dan Kader. Kementerian Kesehatan RI; 2019. https://repository.kemkes.go.id/book/702