Data klinik kecil itu jarang rapi, dan ini contoh nyatanya. Dataset klinik fiktif di Jabodetabek: 25 dokter, 2.000 pasien, ribuan janji temu, plus diagnosis dan resep obat. Tanggalnya campur tiga format, banyak data pasien kosong, ada appointment tanpa catatan diagnosis. Kamu bakal latihan parsing tanggal dan handle data bolong sebelum bisa analisis apa-apa. Ini yang level advanced, tantangan beneran.
Bingung mau ngapain sama dataset ini? Kami udah siapin 10 ide analisis berjenjang, dari yang gampang buat pemula sampai project portfolio yang bisa langsung kamu pajang di CV.
Pertanyaan bisnis: Manajer Klinik Medinara mau tahu, dari 25 dokter, spesialisasi mana yang paling padat, dan apakah jumlah dokternya udah seimbang sama janji temu yang masuk.
Yang bisa kamu ulik:
specializationOutput buat portfolio/laporanmu: Tabel ringkasan beban kerja per spesialisasi, jadi bahan diskusi mau nambah dokter atau geser jadwal.
Tools yang bisa kamu pake: SQL, atau Google Sheets / Excel (pivot table).
Konsep yang kepake: gabungin data antar tabel (JOIN / VLOOKUP), agregasi & grouping (GROUP BY / pivot table), rata-rata.
9 ide lainnya (Premium)
Daftar dokter dengan spesialisasi, jadwal praktik, pengalaman, dan tarif konsultasi.
| Kolom | Tipe | Deskripsi |
|---|---|---|
| doctor_id | text | PK. Identifier dokter (DOC01-DOC25). |
| name | text | Nama dokter, format 'dr. {Name}' atau 'dr. {Name}, Sp.{X}'. |
| specialization | text | Spesialisasi: Umum, Gigi, Anak, Kandungan, Penyakit Dalam, Kulit, Mata, THT. |
| schedule_days | text | Jadwal praktik (mis. 'Senin-Jumat', 'Senin,Rabu,Jumat'). |
| phone | text | Nomor telepon format 08xxxxxxxxxx. |
| experience_years | integer | Tahun pengalaman (3-25). |
| consultation_fee_idr | integer | Tarif konsultasi IDR (Umum 50k-100k, Spesialis 150k-350k). |
Sumber: NgulikData Dataset Pack
Lisensi: CC BY 4.0
Isi nama sama email dulu ya, terus datanya langsung bisa kamu download.
Dengan mengisi form ini, kamu setuju menerima email edukasi dari Ngulik Data.
Masuk dulu ke akun kamu, atau lihat paket Premium biar semua ide analisis dan project portfolio kebuka.
Mulai Rp 69.000/bln, cancel kapan aja
Master pasien dengan NIK ter-mask, demografi, dan jenis asuransi.
| Kolom | Tipe | Deskripsi |
|---|---|---|
| patient_id | text | PK. Identifier pasien (PAT00001-PAT02000). |
| name | text | Nama pasien (Indonesia). |
| nik_masked | text | NIK ter-mask: 6 digit + '******' untuk privasi. |
| dob | date | Tanggal lahir (YYYY-MM-DD, range 1950-2020). Format ISO bersih. |
| gender | text | Jenis kelamin: Male (48%) / Female (52%). |
| address | text | Alamat, format 'Jl. {Nama} No. {N}'. |
| city | text | Kota (Jakarta, Depok, Tangerang, Bekasi, Bogor, Bandung, dll). |
| phone | text | Nomor telepon 08xxxxxxxxxx. DIRTY: 8% (160) null. |
| blood_type | text | Golongan darah A / B / AB / O. DIRTY: 15% (300) null. |
| registration_date | date | Tanggal registrasi (YYYY-MM-DD, 2021-01-01 s/d 2024-06-01). Format ISO bersih. |
| insurance_type | text | Jenis asuransi: BPJS (60%), Mandiri (20%), Perusahaan (12%), Umum (8%). |
Janji temu dokter-pasien dengan keluhan, status, dan metode pembayaran. Kolom tanggal campur format.
| Kolom | Tipe | Deskripsi |
|---|---|---|
| appt_id | text | PK. Identifier janji temu (APT00001-APT05000). |
| patient_id | text | FK -> patients.patient_id. Wajib, semua valid. |
| doctor_id | text | FK -> doctors.doctor_id. Wajib, semua valid. |
| appt_date | text | Tanggal janji temu. DIRTY: MIXED FORMATS - 40% YYYY-MM-DD, 35% DD/MM/YYYY, 25% DD-MM-YYYY. Disimpan sebagai teks, wajib di-parse. |
| appt_time | text | Jam janji temu format HH:00 (jam klinik 08:00-17:00). |
| complaint | text | Keluhan singkat (free text). |
| status | text | Status: completed (4000) / cancelled (400) / no_show (350) / rescheduled (250). |
| fee_idr | integer | Biaya, mirror dari doctors.consultation_fee_idr. |
| payment_method | text | Metode bayar: BPJS / Tunai / Transfer / Asuransi. |
Diagnosis per appointment completed dengan ICD-10 code, severity, dan catatan klinis.
| Kolom | Tipe | Deskripsi |
|---|---|---|
| diagnosis_id | text | PK. Identifier diagnosis (DGN0001 dst). |
| appt_id | text | FK -> appointments.appt_id. Hanya appointment status 'completed'. DIRTY: 120 completed appointments tanpa record diagnosis (FK gap intentional; completed=4000, diagnoses=3880). |
| icd_code | text | Kode ICD-10 (J00, K30, M54, I10, E11, dll). DIRTY: 18% (698) null. |
| description | text | Deskripsi diagnosis. |
| severity | text | Tingkat keparahan: mild (60%) / moderate (30%) / severe (10%). |
| follow_up_required | boolean | Perlu follow-up: true (30%) / false (70%). |
| notes | text | Catatan klinis singkat. ~40% kosong. |
Resep obat per diagnosis (rata-rata 1.5 obat/diagnosis) dengan dosis, rute, dan durasi. Kolom tanggal campur format.
| Kolom | Tipe | Deskripsi |
|---|---|---|
| rx_id | text | PK. Identifier resep (RX00001 dst). |
| diagnosis_id | text | FK -> diagnoses.diagnosis_id. Wajib, semua valid. |
| patient_id | text | FK -> patients.patient_id. Denormalized (match pasien dari appointment diagnosis). |
| medicine_name | text | Nama obat (mis. Paracetamol 500mg, Amoxicillin 500mg). |
| dosage | text | Dosis free text (mis. '3x1 tablet', '2x500mg', 'Oles 2x sehari'). |
| route | text | Rute pemberian: oral / topikal / injeksi / inhaler. |
| duration_days | integer | Durasi hari (3, 5, 7, 10, 14, 30). |
| prescribed_date | text | Tanggal resep. DIRTY: MIXED FORMATS sama distribusi dengan appt_date. Disimpan sebagai teks, wajib di-parse. |
| quantity | integer | Total qty obat (durasi x frekuensi/hari). |
Masuk dulu ke akun kamu, atau lihat paket Premium biar semua ide analisis dan project portfolio kebuka.
Mulai Rp 69.000/bln, cancel kapan aja