Skip to content

About

No description or website provided.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏠 Determinan Harga Rumah di Jabodetabek — Versi Python

Analisis regresi linier berganda pada 2.724 listing properti Jabodetabek (dari 3.553 listing mentah hasil scraping Rumah123 — dataset Kaggle "Daftar Harga Rumah Jabodetabek"), dengan penekanan pada validitas inferensial: uji asumsi klasik lengkap, transformasi Box–Cox, diagnostik autokorelasi spasial, dan pemilihan model berbasis kriteria informasi.

📄 Laporan lengkap: reports/index.html (buka langsung di browser — semua gambar tertanam). 📘 Panduan penulisan ulang langkah-demi-langkah: PANDUAN_PYTHON.md

🔍 Pertanyaan Penelitian

  1. Berapa besar elastisitas harga terhadap luas tanah vs luas bangunan?
  2. Seberapa besar premium lokasi (Jakarta vs Bodetabek)?
  3. Apakah status sertifikat (SHM vs HGB) berpengaruh signifikan terhadap harga?

🧪 Alur Analisis & Temuan Diagnostik

Tahap Metode Temuan aktual
Deduplikasi kunci (harga, luas, koordinat) 714 iklan ganda dibuang (3.442 → 2.728)
Missing value klasifikasi MCAR/MAR/MNAR carports MNAR → 0; electricity MAR → median per kota; building_age 37% → median + flag
Transformasi Box–Cox λ̂ = 0,040 → spesifikasi log–log
Multikolinearitas VIF / GVIF^½ᵈᶠ (Fox–Monette) triad land × building × ratio: GVIF 38,6 → 8,2 setelah ratio_bld dibuang
Heteroskedastisitas Breusch–Pagan, White, NCV signifikan (p≪0,001) → robust SE HC3; SE elastisitas membesar s.d. 2×
Normalitas Q-Q plot + skew/kurtosis (bukan hanya Shapiro) ekor agak berat; CLT + HC3 → inferensi tetap valid
Autokorelasi Moran's I (bukan sekadar Durbin–Watson) I = 0,167 (p=0,001) → 0,005 (p=0,249) setelah remedi spasial
Outlier Cook's D + leverage + analisis sensitivitas buang 160 obs → elastisitas inti bergeser hanya 1–7% → robust
Seleksi model stepwise AIC vs BIC + 10-fold CV BIC dipilih (21 parameter, tujuan inferensial); CV berselisih hanya 0,007 dari model AIC

📊 Temuan Utama (model final BIC, robust SE HC3, adj. R² = 0,908)

Faktor Estimasi Interpretasi
Luas tanah β = 0,562*** elastisitas: tanah +1% → harga +0,56%
Luas bangunan β = 0,383*** bangunan +1% → harga +0,38%
Harga tetangga (8 k-NN, out-of-fold) β = 0,527*** spillover spasial: harga/m² sekitar +1% → +0,53%
Jarak ke Monas (CBD) β = −0,143*** +1% lebih jauh → harga −0,14%
Jakarta Utara vs Jaksel +12,4%*** premium lokasi
Bekasi / Bogor / Depok vs Jaksel −11,9% / −15,3% / −9,7% diskon pinggiran
Sertifikat HGB vs SHM −3,3% (n.s.) ⚠️ tidak signifikan — klaim "premium SHM" tidak terbukti di data ini
Kamar tidur (luas dikontrol) −3,5%/kamar** kamar makin banyak di luas sama = kamar sempit
Kamar mandi / lantai / umur +5,8% / +14,3% / −0,6% per tahun semua signifikan

RMSE 10-fold CV (log) = 0,336 → kesalahan tipikal ≈ ±40% dari harga listing.

⚠️ Keterbatasan

  • Data = harga penawaran, bukan harga transaksi → potensi bias ke atas.
  • Cross-section satu periode → asosiasi, bukan kausalitas.
  • Omitted variables: akses jalan, banjir, sekolah, keamanan.
  • nbr_price adalah proxy dependensi spasial; pengembangan lanjut: SAR/SDM sejati (spreg) / GWR.

🛠️ Reproduksi

pip install -r requirements.txt
python scripts/01_clean_data.py        # cleaning + feature engineering
python scripts/02_eda.py               # eksplorasi + grafik
python scripts/03_modeling.py          # Box-Cox + uji asumsi + remedi
python scripts/04_model_selection.py   # stepwise AIC/BIC + 10-fold CV
python scripts/05_build_report.py      # membangkitkan reports/index.html

📁 Struktur

├── README.md · PANDUAN_PYTHON.md · requirements.txt
├── data/{raw,processed}/          # CSV mentah + hasil cleaning (pkl)
├── scripts/00_scrape_polite.py    # contoh scraping etis (tidak dijalankan)
├── scripts/01…05                  # pipeline analisis (urut, terotomatisasi)
├── src/helpers.py                 # haversine, GVIF Fox–Monette, stepwise, CV, Moran
├── figures/  results/             # grafik PNG + seluruh statistik (JSON)
└── reports/index.html             # 📄 laporan akhir

Stack: pandas · statsmodels · scipy · scikit-learn · libpysal + esda (PySAL) · matplotlib

Sumber data mirror: CSV Kaggle "Daftar Harga Rumah Jabodetabek" via repo GitHub januarpancaran/jabodetabek-house-price-prediction. Untuk keperluan edukasi.

About

No description or website provided.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages