Memuat
Memuat
Random Forest dengan Fitur Lag untuk Meteorologi dan Iklim
0 kali dilihat
Meramalkan suhu rata-rata harian dengan bantuan kelembapan udara dan indeks musim menggunakan Random Forest dengan Fitur Lag, lalu membandingkan galat peramalan pada data uji. Random forest dengan fitur lag memakai nilai-nilai deret waktu sebelumnya sebagai prediktor sehingga masalah peramalan menjadi regresi tabular. Cocok untuk deret dengan pola nonlinear atau banyak variabel penjelas tambahan.

Meramalkan suhu rata-rata harian dengan bantuan kelembapan udara dan indeks musim menggunakan Random Forest dengan Fitur Lag, lalu membandingkan galat peramalan pada data uji.
| Peran | Variabel | Satuan |
|---|---|---|
| Utama | Suhu rata-rata harian | °C |
| Pendukung 1 | Kelembapan udara | % |
| Pendukung 2 | Indeks musim | - |
Model random forest berfitur lag meramalkan Suhu rata-rata harian 12 periode ke depan dengan RMSE 6.675 dan MAPE 7.93%. Lag terpenting adalah t-1.
Dihitung dari data sintetis sebagai ilustrasi, bukan dari penelitian nyata.
Random forest dengan fitur lag memakai nilai-nilai deret waktu sebelumnya sebagai prediktor sehingga masalah peramalan menjadi regresi tabular. Cocok untuk deret dengan pola nonlinear atau banyak variabel penjelas tambahan.
Laporkan MAE dan RMSE terhadap baseline naif serta lag yang paling penting. Jelaskan bahwa evaluasi ini satu langkah ke depan dengan lag aktual.
Skrip awal singkat dengan nama variabel proyek ini. Versi yang diserahkan disesuaikan dengan data Anda dan diberi komentar lengkap.
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestRegressor
rng = np.random.default_rng(14)
n = 240
air_humidity = np.arange(n)
daily_mean_temperature = 100 + 0.2 * air_humidity + 12 * np.sin(2 * np.pi * air_humidity / 12) + rng.normal(0, 2, n)
df = pd.DataFrame({"y": daily_mean_temperature})
for k in (1, 2, 3, 12):
df[f"lag{k}"] = df["y"].shift(k)
df = df.dropna().reset_index(drop=True)
split = len(df) - 24
X = df.drop(columns="y").values
y = df["y"].values
rf = RandomForestRegressor(n_estimators=300, random_state=14)
rf.fit(X[:split], y[:split])
pred = rf.predict(X[split:])
naive = df["lag1"].values[split:]
print("RF MAE:", round(np.abs(y[split:] - pred).mean(), 3),
"RMSE:", round(np.sqrt(((y[split:] - pred) ** 2).mean()), 3))
print("Naive MAE:", round(np.abs(y[split:] - naive).mean(), 3))
print(dict(zip(df.columns[1:], rf.feature_importances_.round(3))))
plt.plot(y[split:], label="Actual")
plt.plot(pred, label="RF")
plt.plot(naive, "--", label="Naive")
plt.legend()
plt.show()Pilih seberapa banyak bantuan yang Anda perlukan. Setiap paket yang lebih tinggi sudah mencakup semua item paket di bawahnya. Harga belum termasuk PPN 11%.
Paket 1
Rp 450.000
belum termasuk PPN 11%
Waktu pengerjaan: 7 hari kerja
Output: Berkas Python + gambar hasil
Yang Anda terima
Paket 2 · paling dipilih
Rp 1.300.000
belum termasuk PPN 11%
Waktu pengerjaan: 13 hari kerja
Output: Kode + analisis + bahan interpretasi
Termasuk semua item Paket 1, ditambah
Paket 3
Rp 2.900.000
belum termasuk PPN 11%
Waktu pengerjaan: 18-21 hari kerja
Output: Kode + analisis + pendampingan hingga siap dipresentasikan
Termasuk semua item Paket 1 & 2, ditambah
Cocok. Random Forest dengan Fitur Lag lazim dipakai pada jenjang ini di bidang Meteorologi dan Iklim. Analisis kami sesuaikan dengan pertanyaan penelitian, data Anda sendiri, dan ketentuan dosen pembimbing.
Bukan. Lembar hasil dihitung dari data sintetis sebagai ilustrasi jenis keluaran Python. Untuk pesanan Anda, metode yang sama dijalankan pada data penelitian Anda sendiri.
Itu tujuan paketnya. Setiap skrip diberi komentar, dan Paket 3 mencakup dua sesi pendampingan serta latihan tanya jawab supaya Anda bisa menjelaskan metode dan hasilnya saat seminar dan sidang.
Tiap proyek punya tiga paket: Paket 1 (kode dan penjelasan) Rp 450.000, Paket 2 (analisis data Anda dan interpretasi) Rp 1.300.000, dan Paket 3 (pendampingan lengkap) Rp 2.900.000, belum termasuk PPN 11%. Data yang besar, metode tambahan, atau tenggat ketat menyesuaikan penawaran setelah konsultasi singkat.
Lembar hasil memakai data sintetis sebagai ilustrasi. Python adalah merek dagang Python Software Foundation.
Kembali ke portofolio Python