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.

Garis regresi melalui awan titikTujuh titik data berkoordinat (1,3), (2,4), (3,4), (4,6), (5,5), (6,7), (7,8) membentuk awan yang menanjak. Sebuah garis lurus berkemiringan positif, garis regresi y-topi sama dengan b-nol ditambah b-satu kali x, menembus awan titik dan tepat melewati titik pusat rata-rata di x sama dengan 4 dan y sama dengan 5,29.1234567variabel x2345678variabel ygaris regresi ŷ = b₀ + b₁x(x̄, ȳ)
Awan titik data dan garis regresi $\hat{y} = b_0 + b_1 x$ yang paling pas menembusnya. Kemiringannya positif (titik menanjak), dan garis selalu lewat titik pusat data $(\bar{x}, \bar{y})$ — di sini $\bar{x} = 4$ dan $\bar{y} \approx 5{,}29$.

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.

Sisa (residual) sebagai jarak vertikal ke garis regresiTujuh titik data dengan nilai x satu sampai tujuh tersebar di sekitar sebuah garis lurus naik, yaitu garis regresi. Dari tiap titik ditarik ruas garis putus-putus tegak ke bawah atau ke atas menuju garis pada nilai x yang sama; ruas itu adalah sisa atau residual, yakni selisih nilai aktual y dikurangi nilai prediksi y-topi. Titik di atas garis memberi sisa positif, titik di bawah garis memberi sisa negatif. Sisa terbesar terjadi pada x sama dengan lima.yx3456781234567ŷe = y − ŷ(aktual − prediksi)
Tiap residual $e = y - \hat{y}$ adalah jarak vertikal dari titik aktual ke garis pada nilai $x$ yang sama. Titik di atas garis memberi $e > 0$, titik di bawah garis $e < 0$. Inilah selisih yang ingin kita perkecil.

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).

Luas persegi residual yang diminimalkan kuadrat terkecilLima titik data tersebar di sekitar garis regresi paling pas (y-topi sama dengan 2 ditambah 2 dikali x). Untuk tiap titik, jarak vertikal ke garis adalah residual; jarak itu digambar sebagai sisi sebuah persegi, sehingga luas persegi sama dengan residual kuadrat. Persegi dengan residual 2 luasnya empat kali persegi dengan residual 1. Garis kuadrat terkecil adalah garis yang membuat jumlah seluruh luas persegi ini sekecil mungkin.YXgaris paling pas (ŷ)luas = e²e = +2e = −212345
Tiap residual dijadikan sisi sebuah persegi, jadi luasnya $= e^2$. Residual $e = \pm 2$ menghasilkan persegi empat kali lebih besar dari residual $e = \pm 1$ — error besar dihukum lebih berat. Garis kuadrat terkecil adalah garis yang membuat total luas semua persegi ini paling kecil.

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)
1562
2871
31068
41278
51582
61885
72088
82290
92593
103098
Σ165815

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,5224,25132,25
2−8,5−10,589,2572,25
3−6,5−13,587,7542,25
4−4,5−3,515,7520,25
5−1,50,5−0,752,25
61,53,55,252,25
73,56,522,7512,25
85,58,546,7530,25
98,511,597,7572,25
1013,516,5222,75182,25
Σ00811,50568,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 (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,53,752,25
−0,5−0,50,250,25
0,50,50,250,25
1,52,53,752,25
Σ8,005,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).