Data Analisis Linear Regression: California Housing Prices
Dalam artikel ini, Saya ingin berbagi tentang penjelasan analisis data yang sudah Saya lakukan pada dataset California Housing Prices. Tujuan akhir dari pada analisis data ini adalah membuat model untuk mengestimasi harga rumah di California berdasarkan parameter-parameter yang tersedia. Metode analisis data yang digunakan akan Saya jelaskan pada bagian metode.
Pendahuluan
Dataset California Housing Prices memiliki 10 features (parameter), yaitu;
- longitude : lokasi rumah pada bentangan timur-barat
- latitude : lokasi rumah pada bentangan utara-selatan
- housingMedianAge : nilai median usia rumah dalam satu blok perumahan
- totalRooms : total ruangan dalam satu blok perumahan
- totalBedRooms : total tempat tidur dalam satu blok perumahan
- population : jumlah populasi yang tinggal dalam satu blok perumahan
- households : jumlah rumah tangga yang tinggal dalam satu rumah, untuk satu perumahan
- medianIncome : nilai median pendapatan rumah tangga dalam satu perumahan (dalam $10.000)
- medianHouseValue : nilai median rumah untuk rumah tangga dalam satu perumahan ($)
- oceanProximity : lokasi rumah terhadap ocean/pantai
Secara keseluruhan, dataset ini memiliki 20,640 lokasi perumahan dengan rata-rata usia rumah 28.63 tahun, rata-rata populasi sebanyak 1425 orang, rata-rata median pendapatan (medianIncome) $38,700, dan rata-rata median nilai rumah (medianHouseValue) $206,855. Menggunakan dataset ini, Saya mencoba membuat model untuk memprediksi harga rumah (medianHouseValue) berdasarkan parameter-parameter yang relevan dalam dataset ini.
Metode
Metode yang digunakan untuk memodelkan dataset ini adalah Linear Regression (menggunakan library Scikit-Learn di Python) dengan asumsi bahwa parameter-parameter lainnya memiliki hubungan yang linier terhadap parameter harga median rumah (medianHouseValue).
Sebelum menerapkan metode ini kepada dataset, perlu dilakukan pembersihan data untuk memaksimalkan pemodelan regresi yang dilakukan. Pembersihan data yang dilakukan diantaranya mengisi nilai yang tidak bernilai dengan menghitung median dari data distribusi parameter yang bersangkutan dan menghapus data yang outliers menggunakan metode Interquartile Range (IQR) dengan menerapkan pengulangan sesuai dengan kebutuhan.
Setelah dilakukan pembersihan data, kemudian parameter medianHouseValue dijadikan sebagai target (parameter dependen) yang akan diprediksi. Selanjutnya, dataset dibagi menjadi 80% sebagai data training dan 20% sebagai data testing. Proses feature scaling diterapkan pada data training dan testing non-target untuk mereduksi perbedaan nilai skala yang signifikan besar antar parameter-parameter ketika proses pemodelan dilakukan, metode Standar Scaler digunakan pada proses ini.
Evaluasi model yang dihasilkan dengan data testing diukur menggunakan perhitungan coefficient correlation (r2) dan Mean Absolute Percentage Error (MAPE).
Hasil dan Pembahasan
Dari 20,640 data yang tersedia, terdapat 207 data yang tidak bernilai pada parameter totalBedrooms. Parameter ini kemudian dilakukan pengisian dengan menghitung nilai mediannya. Kemudian, Gambar 1 menjelaskan distribusi secara keseluruhan dari setiap parameter yang digunakan sebelum dilakukan pembersihan. Terlihat pada hampir semua parameter memiliki kecenderungan distribusi dengan kemiringan positif (positive skew) yang menunjukkan adanya nilai yang signifikan tinggi dari nilai keseluruhan, kecuali parameter houseMedianAge, longitude, dan latitude.
Gambar 3. Kondisi dataset setelah pembersihan data (menghapus data outliers)
Gambar 4. Distribusi data setelah pembersihan dilakukan. Secara umum, data cenderung memiliki distribusi yang normal dibandingkan dengan sebelum dilakukan pembersihan.
Dataset yang telah dibersihkan kemudian dianalisis dengan koefisien korelasi untuk setiap pasangan parameternya, dan fokus pada target parameter medianHouseValue seperti yang ditampilkan pada Gambar 5. Korelasi yang cukup kuat terhadap parameter tersebut (>0.5) hanya dipengaruhi oleh parameter medianIncome dengan nilai korelasi sebesar 0.622. Nilai korelasi dari parameter lainnya tidak menunjukkan korelasi yang begitu signifikan terhadap parameter medianHouseValue. Namun demikian, parameter-parameter tersebut tetap dipertimbangkan untuk dilatih.
Sebanyak 80% dataset yang telah dibersikan digunakan untuk dilatih (training) dan 20% sisanya digunakan untuk uji coba (testing) model regresi yang dilakukan. Setelah proses Linear Regression dilakukan, model diperoleh dengan nilai R² sebesar 0.5113 dan MAPE sebesar 0.3103%. Nilai R² yang diperoleh cenderung tidak begitu signifikan karena hampir seluruh parameter tidak berkorelasi secara optimal terhadap parameter medianHouseValue. Meskipun demikian, nilai MAPE yang dihasilkan cenderung kecil mendekati nol persen.
Demikian rangkuman analisi linear regresi yang telah Saya lakukan. Anda dapat melihat proses analisis data pada halaman ini.





Comments
Post a Comment