Anda di halaman 1dari 3

Dalam sebuah studi kasus, seorang peneliti ingin mengetahui apakah terdapat

hubungan antara tinggi badan (X) dan berat badan (Y) pada sekelompok individu.
Bagaimana cara melakukan regresi linier untuk mengetahui hubungan tersebut?

Pertama-tama, impor library Pandas untuk membaca dan memanipulasi data serta
library Matplotlib untuk membuat visualisasi data. Berikut adalah kode untuk
mengimpor kedua library tersebut:

import pandas as pd
import matplotlib.pyplot as plt

Selanjutnya, buat dataset tinggi badan dan berat badan menggunakan Pandas dan
simpan dalam sebuah file CSV. Berikut adalah contoh kode untuk membuat dataset
dengan 50 baris secara acak:

import numpy as np

tinggi = np.random.normal(loc=170, scale=10, size=50)
berat = 0.5 * tinggi + np.random.normal(loc=0, scale=5, size=50)

data = pd.DataFrame({'tinggi_badan': tinggi, 'berat_badan': berat})
data.to_csv('dataset.csv', index=False)

Baca data tinggi badan dan berat badan dari file CSV menggunakan Pandas dan
tampilkan data tersebut dalam bentuk tabel. Berikut adalah contoh kode untuk
membaca data dari file CSV:

df = pd.read_csv('dataset.csv')
df.head()

Buat scatter plot dengan tinggi badan sebagai sumbu X dan berat badan sebagai
sumbu Y. Ini akan membantu Anda memvisualisasikan hubungan antara kedua
variabel. Berikut adalah kode untuk membuat scatter plot menggunakan Matplotlib:

plt.scatter(df['tinggi_badan'], df['berat_badan'])
plt.xlabel('Tinggi Badan')
plt.ylabel('Berat Badan')
plt.show()

Hitung koefisien korelasi antara tinggi badan dan berat badan menggunakan fungsi
corr() pada Pandas. Berikut adalah contoh kode untuk menghitung koefisien
korelasi:
r = df['tinggi_badan'].corr(df['berat_badan'])
print('Koefisien korelasi:', r)

Hitung persamaan regresi linier menggunakan Numpy.

import numpy as np

x = df['tinggi_badan']
y = df['berat_badan']

b = np.polyfit(x, y, 1)[0]
a = np.polyfit(x, y, 1)[1]

print('Intersep:', a)
print('Koefisien regresi:', b)

Interpretasikan hasil regresi linier dengan memperhatikan nilai intercept dan


koefisien regresi. Intersep adalah nilai berat badan yang diharapkan jika tinggi badan
adalah nol, sedangkan koefisien regresi menunjukkan seberapa banyak berat badan
berubah jika tinggi badan

Buat plot garis regresi linier pada scatter plot sebelumnya. Berikut adalah contoh
kode untuk membuat plot garis regresi linier:

plt.scatter(df['tinggi_badan'], df['berat_badan'])
plt.plot(x, a + b*x, color='red')
plt.xlabel('Tinggi Badan')
plt.ylabel('Berat Badan')
plt.show()

Plot garis regresi linier dapat membantu memvisualisasikan hubungan antara tinggi
badan dan berat badan dengan lebih jelas.

Hitung R-squared untuk mengetahui seberapa baik model regresi linier Anda cocok
dengan data. R-squared adalah koefisien determinasi yang menunjukkan seberapa
besar persentase variasi data yang dapat dijelaskan oleh model regresi linier.
Berikut adalah contoh kode untuk menghitung R-squared:

from sklearn.metrics import r2_score

y_pred = a + b*x
r_squared = r2_score(y, y_pred)
print('R-squared:', r_squared)

Nilai R-squared berkisar antara 0 dan 1, dengan nilai yang lebih tinggi menunjukkan
model yang lebih baik dalam menjelaskan variasi data.

Anda mungkin juga menyukai