🔬 Data Analytics

Dari angka mentah jadi insight: statistik, smoothing, anomali, dan tren.

Deteksi anomali dengan z-score
Nilai di luar ±2σ dari rata-rata ditandai sebagai anomali

📌 1. Statistik Dasar untuk Data Sensor

FungsiArtiUse Case IoT
mean()Rata-rataKPI, baseline
stdev()Sebaran (standar deviasi)Seberapa "stabil" sensor
moving_average(v, w)Rata-rata bergerak jendela wSmoothing noise
zscore(v)Jarak tiap nilai dari mean (dalam σ)Normalisasi untuk deteksi anomali
detect_anomalies(v, t)Indeks nilai |z| > tSensor rusak, kejadian luar biasa
linear_regression(v)Garis tren (slope, intercept)Menghangat/mendingin, degradasi

📌 2. Smoothing: Moving Average

Data sensor berisik. Moving average dengan jendela w mengganti tiap nilai dengan rata-rata w nilai terakhir — kurva jadi halus, tapi lambat mengikuti perubahan nyata.

Output:

Bandingkan kolom RAW (bergetar) dengan MA-5 (halus). Ubah jendela ke 8 — makin halus, makin lambat.

📌 3. Deteksi Anomali (Z-Score)

Z-score mengukur seberapa jauh nilai dari rata-rata, dalam satuan standar deviasi. Nilai |z| > 2 (atau 3) dianggap sangat tidak biasa — kandidat anomali.

Output:
⚠️ Z-score asumsi data sebaran normal. Untuk data musiman (suhu harian naik-turun), pakai z-score terhadap baseline musiman atau metode lain (IQR, STL, model ML).

📌 4. Deteksi Tren (Regresi Linear)

Regresi linear mencari garis y = slope·x + intercept yang paling pas. Slope = arah & kecepatan tren.

Output:

📌 5. Lanjutan: Menuju Machine Learning

Setelah statistik deskriptif, dunia ML untuk IoT:

  • Klasifikasi — normal vs anomali (Random Forest, Isolation Forest).
  • Forecasting — prediksi beban listrik 24 jam ke depan (ARIMA, Prophet, LSTM).
  • Predictive maintenance — prediksi kapan mesin gagal dari getaran/suhu.
  • Edge ML — model kecil (TFLite, TinyML) jalan di MCU, tanpa cloud.
💡 Statistik klasik (z-score, regresi) sering cukup dan jauh lebih murah daripada model ML — mulai dari yang sederhana.

🧠 Latihan

  1. Ubah editor 2: suntik 2 anomali (indeks 5 dan 17). Pastikan keduanya terdeteksi.
  2. Buat data dengan tren TURUN (v - i * 0.2) dan verifikasi slope negatif.
  3. Hitung moving average dengan jendela 1, 5, dan 10. Bandingkan standar deviasi ketiganya — apa polanya?
  4. Diskusi: sensor suhu ruang server. Threshold alarm apa yang masuk akal (mis. mean > 30° selama 5 menit)? Kenapa alarm "1 titik > 30°" adalah ide buruk? (Petunjuk: false alarm.)