Seorang dosen menduga ada pola: mahasiswa yang lebih banyak belajar cenderung dapat nilai lebih tinggi. Ia mencatat jam belajar per minggu dan nilai ujian sepuluh mahasiswanya, lalu memplot titik-titiknya. Benar saja — titik-titik itu menanjak dari kiri-bawah ke kanan-atas. Tetapi pola itu tidak rapi; titiknya berserakan, tidak persis membentuk garis.
Pertanyaan berikutnya yang wajar: kalau ada mahasiswa baru yang belajar 16 jam seminggu, kira-kira nilainya berapa? Untuk menjawabnya, dosen perlu menarik satu garis lurus yang paling mewakili awan titik tadi — garis yang bisa dipakai membaca prediksi. Cara menemukan garis itu, secara terukur dan bukan kira-kira, adalah inti regresi linear sederhana.
Intuisi: Mencari Garis yang Paling Pas
Bayangkan awan titik di atas kertas grafik. Anda bisa menarik tak hingga banyak garis lurus melaluinya — yang curam, yang landai, yang tinggi, yang rendah. Regresi memilih satu garis: garis yang, secara keseluruhan, paling dekat dengan semua titik sekaligus.
Begitu garis itu ketemu, ia punya dua kegunaan. Pertama, meringkas hubungan: “tiap tambah satu jam belajar, nilai naik sekian poin.” Kedua, memprediksi: masukkan jam belajar mana pun, garis memberi tebakan nilainya.
Persamaan Garis Regresi
Sebuah garis lurus ditentukan oleh dua angka. Dalam regresi kita menuliskannya:
$$\hat{y} = b_0 + b_1 x$$Tiap lambang:
- $\hat{y}$ (dibaca “y-topi”) = nilai $Y$ yang diprediksi oleh garis. Topi di atas $y$ adalah penanda baku untuk “prediksi”, supaya beda dari $y$ data asli.
- $x$ = nilai variabel bebas yang kita masukkan (misalnya jam belajar).
- $b_0$ = intercept, yaitu nilai $\hat{y}$ ketika $x = 0$ (tinggi garis saat menyentuh sumbu kiri).
- $b_1$ = slope (kemiringan), yaitu seberapa banyak $\hat{y}$ berubah setiap $x$ bertambah satu satuan.
Contoh polos. Andaikan modelnya $\hat{y} = 50 + 3x$, dengan $x$ = jam belajar dan $\hat{y}$ = nilai prediksi. Maka:
- $x = 0$ (tidak belajar) → $\hat{y} = 50 + 3(0) = 50$. Itu si intercept.
- Setiap satu jam belajar tambahan, nilai prediksi naik 3 poin. Itu si slope.
- $x = 10$ jam → $\hat{y} = 50 + 3(10) = 80$.
Residual: Selisih Aktual dan Prediksi
Garis memberi prediksi $\hat{y}$, tetapi nilai sesungguhnya $y$ jarang persis di garis. Selisih antara keduanya disebut residual (atau sisa):
$$e = y - \hat{y}$$Bacalah polos: residual = nilai aktual − nilai prediksi. Kalau seorang mahasiswa sebenarnya dapat 78 padahal garis memprediksi 75, residualnya $e = 78 - 75 = 3$ (titik berada 3 poin di atas garis). Kalau aktualnya 72 dan prediksi 75, maka $e = 72 - 75 = -3$ (titik di bawah garis). Residual positif berarti garis meremehkan, residual negatif berarti garis melebih-lebihkan.
Garis Paling Pas: Logika Kuadrat Terkecil
Kalau “paling pas” berarti “residualnya sekecil mungkin”, bagaimana cara mengukur residual seluruh titik dalam satu angka? Ide pertama — jumlahkan saja semua residual — gagal, karena residual positif dan negatif saling membatalkan. Garis regresi selalu menghasilkan $\sum e = 0$, padahal garis yang jelek pun bisa punya jumlah residual nol. Persis seperti simpangan dari rata-rata di variabilitas yang juga selalu berjumlah nol.
Solusinya sama seperti di sana: kuadratkan dulu tiap residual, baru jumlahkan. Total ini disebut jumlah kuadrat residual (Sum of Squared Errors, SSE):
$$\text{SSE} = \sum_{i=1}^{n} (y_i - \hat{y}_i)^2$$Di sini $\sum_{i=1}^{n}$ artinya “jumlahkan untuk semua data, dari yang ke-1 sampai ke-$n$”, dan $(y_i - \hat{y}_i)^2$ adalah residual titik ke-$i$ yang dikuadratkan.
Tujuan regresi: pilih $b_0$ dan $b_1$ yang membuat SSE sekecil mungkin. Karena yang diminimalkan adalah jumlah residual kuadrat, metode ini dinamai kuadrat terkecil (Ordinary Least Squares, OLS).
Kenapa dikuadratkan, bukan diambil nilai mutlaknya? Dua alasan. Pertama, mengkuadratkan membuat fungsi SSE mulus sehingga rumus eksak untuk $b_0$ dan $b_1$ bisa diturunkan (lihat di bawah). Kedua, error besar mendapat penalti jauh lebih berat (kuadrat dari 10 = 100, sedangkan nilai mutlak dari 10 = 10), sehingga garis tidak boleh mengabaikan titik yang menyimpang jauh.
Rumus Slope dan Intercept
Menurunkan SSE terhadap $b_0$ dan $b_1$, menyamakannya dengan nol, lalu memecahkan kedua persamaan, menghasilkan dua rumus baku ini:
$$b_1 = \frac{\sum_{i=1}^{n}(x_i - \bar{x})(y_i - \bar{y})}{\sum_{i=1}^{n}(x_i - \bar{x})^2}$$$$b_0 = \bar{y} - b_1 \bar{x}$$Tiap lambang:
- $\bar{x}$ (x-bar) = rata-rata semua nilai $X$; $\bar{y}$ (y-bar) = rata-rata semua nilai $Y$.
- $(x_i - \bar{x})$ = simpangan nilai $X$ ke-$i$ dari rata-ratanya (sama persis dengan gagasan simpangan di variabilitas).
- $(y_i - \bar{y})$ = simpangan nilai $Y$ ke-$i$ dari rata-ratanya.
Rumus slope terlihat menakutkan, tetapi logikanya sederhana:
- Pembilang $\sum(x_i - \bar{x})(y_i - \bar{y})$ menangkap gerak bersama $X$ dan $Y$: saat $X$ di atas rata-ratanya, apakah $Y$ juga cenderung di atas rata-ratanya? Kalau ya, hasil kalinya positif dan slope positif.
- Penyebut $\sum(x_i - \bar{x})^2$ menangkap variasi $X$ saja — ini persis pembilang varians $X$ dari variabilitas.
- Gerak-bersama dibagi variasi-$X$ menghasilkan slope: berapa unit $Y$ berubah per satu unit $X$.
Sementara intercept $b_0 = \bar{y} - b_1\bar{x}$ hanyalah penyesuaian tinggi garis agar ia pasti melewati titik pusat data $(\bar{x}, \bar{y})$. Setiap garis regresi lewat titik rata-rata ini — sifat yang berguna untuk memeriksa hitungan.
Contoh Hitung dari Nol
Mari kerjakan kasus pembuka sampai tuntas. Sepuluh mahasiswa, $X$ = jam belajar per minggu, $Y$ = nilai ujian akhir.
Langkah 1 — data mentah dan rata-rata.
| $i$ | $X$ (jam) | $Y$ (nilai) |
|---|---|---|
| 1 | 5 | 62 |
| 2 | 8 | 71 |
| 3 | 10 | 68 |
| 4 | 12 | 78 |
| 5 | 15 | 82 |
| 6 | 18 | 85 |
| 7 | 20 | 88 |
| 8 | 22 | 90 |
| 9 | 25 | 93 |
| 10 | 30 | 98 |
| Σ | 165 | 815 |
Rata-rata: $\bar{x} = 165 / 10 = 16{,}5$ jam dan $\bar{y} = 815 / 10 = 81{,}5$ poin.
Langkah 2 — empat kolom bantu. Untuk tiap baris, hitung simpangan $X$, simpangan $Y$, hasil kalinya, dan kuadrat simpangan $X$.
| $i$ | $x_i - \bar{x}$ | $y_i - \bar{y}$ | $(x_i-\bar{x})(y_i-\bar{y})$ | $(x_i-\bar{x})^2$ |
|---|---|---|---|---|
| 1 | −11,5 | −19,5 | 224,25 | 132,25 |
| 2 | −8,5 | −10,5 | 89,25 | 72,25 |
| 3 | −6,5 | −13,5 | 87,75 | 42,25 |
| 4 | −4,5 | −3,5 | 15,75 | 20,25 |
| 5 | −1,5 | 0,5 | −0,75 | 2,25 |
| 6 | 1,5 | 3,5 | 5,25 | 2,25 |
| 7 | 3,5 | 6,5 | 22,75 | 12,25 |
| 8 | 5,5 | 8,5 | 46,75 | 30,25 |
| 9 | 8,5 | 11,5 | 97,75 | 72,25 |
| 10 | 13,5 | 16,5 | 222,75 | 182,25 |
| Σ | 0 | 0 | 811,50 | 568,50 |
Perhatikan dua kolom simpangan berjumlah nol — sifat yang selalu berlaku. Yang kita butuhkan adalah dua kolom terakhir.
Langkah 3 — slope.
$$b_1 = \frac{\sum(x_i - \bar{x})(y_i - \bar{y})}{\sum(x_i - \bar{x})^2} = \frac{811{,}50}{568{,}50} = 1{,}4274$$Langkah 4 — intercept.
$$b_0 = \bar{y} - b_1\bar{x} = 81{,}5 - 1{,}4274 \times 16{,}5 = 81{,}5 - 23{,}5528 = 57{,}9472$$Persamaan regresinya:
$$\hat{y} = 57{,}95 + 1{,}43\,x$$Verifikasi cepat: garis harus lewat $(\bar{x}, \bar{y}) = (16{,}5;\ 81{,}5)$. Masukkan $x = 16{,}5$: $\hat{y} = 57{,}9472 + 1{,}4274 \times 16{,}5 = 81{,}5$. Cocok.
Interpretasi Koefisien
Untuk model $\hat{y} = 57{,}95 + 1{,}43\,x$:
Slope $b_1 = 1{,}43$. Setiap tambahan satu jam belajar per minggu dikaitkan dengan kenaikan nilai sekitar 1,43 poin. Tafsir ini sahih dalam rentang data yang diamati (5–30 jam). Di luar rentang itu, jangan dipercaya: pada 100 jam belajar per minggu nilai tidak akan terus naik linear karena kelelahan.
Intercept $b_0 = 57{,}95$. Nilai prediksi saat jam belajar = 0, yakni mahasiswa yang sama sekali tidak belajar diprediksi dapat sekitar 58. Tafsir intercept selalu bergantung konteks: kalau $x = 0$ tidak realistis atau jauh di luar rentang data, anggap intercept sekadar parameter teknis penentu tinggi garis — jangan dimaknai berlebihan.
Tafsir slope di regresi sederhana sama dengan di regresi berganda, hanya tanpa frasa “ceteris paribus”. Begitu masuk regresi berganda (banyak variabel bebas), slope dibaca “dengan asumsi variabel lain tetap”.
R²: Seberapa Bagus Garis Cocok
Garis sudah ketemu, tetapi seberapa baik ia menjelaskan data? Ukuran bakunya adalah R² (dibaca “R-kuadrat”):
$$R^2 = 1 - \frac{\text{SSE}}{\text{SST}}$$Dua bahan di dalamnya:
- $\text{SSE} = \sum(y_i - \hat{y}_i)^2$ = jumlah kuadrat residual — sisa variasi yang belum dijelaskan garis.
- $\text{SST} = \sum(y_i - \bar{y})^2$ = total variasi $Y$ terhadap rata-ratanya — variasi yang ada sebelum model dibuat.
Pecahan $\text{SSE}/\text{SST}$ adalah bagian variasi yang tersisa. Dikurangkan dari 1, $R^2$ menjadi proporsi variasi $Y$ yang berhasil dijelaskan model. Nilainya antara 0 dan 1:
- $R^2 = 0$: model tidak menjelaskan apa pun — garis datar di $\bar{y}$ sama bagusnya.
- $R^2 = 1$: model sempurna — semua titik tepat di garis, tak ada residual.
- $R^2 = 0{,}80$: model menjelaskan 80% variasi $Y$.
Untuk data jam belajar di atas, $\text{SSE} = 58{,}13$ dan $\text{SST} = 1216{,}5$, sehingga:
$$R^2 = 1 - \frac{58{,}13}{1216{,}5} = 0{,}9522$$Artinya sekitar 95% variasi nilai ujian dijelaskan oleh jam belajar — tinggi, karena hubungan keduanya memang kuat pada data ini.
Hati-hati: $R^2$ tinggi tidak otomatis berarti model bagus. Satu pencilan bisa menarik garis, hubungan bisa semu (spurious), atau pola sebenarnya melengkung. Selalu lihat scatter plot dan periksa residualnya — jangan percaya $R^2$ buta.
Bereksperimen Sendiri
Geser slope dan intercept, perhatikan bagaimana residual tiap titik berubah. Garis yang membuat total kuadrat residual (SSE) paling kecil adalah garis regresi optimal yang baru saja kita hitung.
Cek Pemahaman
1. Data kecil sampel: $X = 1, 2, 3, 4$ dan $Y = 2, 4, 5, 7$. Hitung slope $b_1$ dan intercept $b_0$ dari nol, lalu tulis persamaan regresinya.
Lihat jawaban
Rata-rata: $\bar{x} = (1+2+3+4)/4 = 2{,}5$ dan $\bar{y} = (2+4+5+7)/4 = 4{,}5$.
| $x_i-\bar{x}$ | $y_i-\bar{y}$ | hasil kali | $(x_i-\bar{x})^2$ |
|---|---|---|---|
| −1,5 | −2,5 | 3,75 | 2,25 |
| −0,5 | −0,5 | 0,25 | 0,25 |
| 0,5 | 0,5 | 0,25 | 0,25 |
| 1,5 | 2,5 | 3,75 | 2,25 |
| Σ | 8,00 | 5,00 |
Slope: $b_1 = 8{,}00 / 5{,}00 = 1{,}6$. Intercept: $b_0 = 4{,}5 - 1{,}6 \times 2{,}5 = 0{,}5$. Persamaan: $\hat{y} = 0{,}5 + 1{,}6\,x$.
2. (Soal transfer.) Seorang analis properti memperoleh model $\hat{y} = 200 + 12\,x$, dengan $x$ = luas rumah (m²) dan $\hat{y}$ = harga prediksi (juta rupiah). (a) Tafsirkan slope-nya dalam kalimat polos. (b) Berapa harga prediksi rumah seluas 80 m²? (c) Layakkah intercept 200 ditafsirkan sebagai harga rumah berukuran 0 m²?
Lihat jawaban
(a) Slope 12: setiap tambahan satu meter persegi luas, harga prediksi naik sekitar 12 juta rupiah.
(b) $\hat{y} = 200 + 12 \times 80 = 200 + 960 = 1.160$ juta rupiah (Rp 1,16 miliar).
(c) Tidak. Rumah seluas 0 m² tidak ada, dan nilai itu jauh di luar rentang data. Intercept 200 di sini hanya parameter teknis penentu tinggi garis, bukan harga yang bermakna.
Rumus di Excel
Setelah paham asal-usulnya, di Excel cukup pakai fungsi bawaan:
=SLOPE(Y_range; X_range) → slope b₁
=INTERCEPT(Y_range; X_range) → intercept b₀
=LINEST(Y_range; X_range) → array {b₁ ; b₀} sekaligus
=RSQ(Y_range; X_range) → R²
=FORECAST.LINEAR(x; Y_range; X_range) → prediksi ŷ untuk x tertentu
Untuk data jam belajar di atas, LINEST mengembalikan array {1,4274 ; 57,9472} dan RSQ mengembalikan 0,9522 — persis sama dengan hitung tangan kita. Bedanya: sekarang Anda tahu dari mana angka itu datang.
⬇ Unduh 28-regresi-linear-sederhana.xlsx
Berkas pendamping berisi beberapa lembar; yang paling instruktif adalah KALKULASI_MANUAL — menampilkan keempat kolom bantu dengan formula hidup sampai slope, intercept, dan R² — dan KALKULASI_OTOMATIS yang membandingkannya dengan SLOPE, INTERCEPT, dan RSQ bawaan Excel.
Kesalahan Umum
Ekstrapolasi liar. Memakai $\hat{y} = 57{,}95 + 1{,}43\,x$ untuk $x = 100$ memberi prediksi sekitar 201 — mustahil untuk nilai ujian, dan di luar rentang data (5–30 jam). Model linear hanya tepercaya dalam rentang data yang diamati.
Mengira korelasi sama dengan sebab-akibat. Slope positif tidak membuktikan $X$ menyebabkan $Y$. Bisa ada variabel ketiga (perancu), atau justru $Y$ yang memengaruhi $X$. Regresi memetakan hubungan, bukan kausalitas.
Percaya $R^2$ tinggi tanpa melihat grafik. Anscombe’s quartet menunjukkan empat data dengan slope, intercept, dan $R^2$ identik tetapi pola visual sangat berbeda — salah satunya bahkan melengkung tajam. Selalu plot datanya.
Lupa memeriksa asumsi. Regresi linear mengandalkan linearitas, ragam residual yang seragam (homoskedastisitas), residual yang menyebar normal, dan independensi antarpengamatan. Pemeriksaan asumsi ini dibahas tuntas di Pilar 2 (Ekonometrika).
Dipakai di Dunia Nyata
- Keuangan. Model pasar meregresikan imbal hasil saham terhadap imbal hasil pasar; slope-nya adalah beta — ukuran risiko sistematis yang menjadi inti CAPM.
- Pemasaran. Meregresikan penjualan terhadap belanja iklan memberi perkiraan tambahan penjualan per rupiah iklan, dasar penyusunan anggaran promosi.
- Sumber daya manusia. Hubungan masa kerja dengan produktivitas, atau jam pelatihan dengan kinerja, dirangkum lewat slope regresi.
- Ekonomi makro. Kurva Phillips (inflasi vs pengangguran) dan fungsi konsumsi (konsumsi vs pendapatan) — keduanya bermula dari regresi linear sederhana.
Lanjutan
Regresi linear sederhana adalah pintu masuk ke seluruh dunia regresi. Begitu satu garis ini Anda kuasai dari nol, lompatan ke model yang lebih kaya akan terasa wajar.
- Sebelumnya: Korelasi — mengukur kekuatan hubungan dua variabel, fondasi langsung pembilang slope.
- Perlu menyegarkan gagasan simpangan dan kuadrat? Balik ke Variabilitas dan sebaran.
- Berikutnya: regresi linear berganda — banyak variabel bebas sekaligus — dan pemeriksaan asumsi klasik di Pilar 2 (Ekonometrika).