Anda di halaman 1dari 8

Nama : Rafi Pramasukma E.

NRP : 10311710000024
Mata Kuliah : Intellegent Manufacturing
Dosen Pengampu : Fauzi Imaduddin Adhim
Topik Bahasan Tugas : Penjelasan Pemrograman Phyton (2)

Penjelasan Pemrograman Bahasa Phyton Simple Linear


Regression

# Impor library yang dibutuhkan


import numpy as np
// Sebagai library phyton digunakan untuk proses aritmatika, jika ingin memanggil fungsi numpy
maka pada saat penulisan program cukup menuliskan dengan np

import matplotlib.pyplot as plt


// Sebagai library phyton digunakan untuk plotting 2D Python yang menghasilkan gambar dan
untuk penulisan program cukup menuliskan dengan plt

import pandas as pd
// Sebagai library phyton yang digunakan untuk mengimpor dataset, dan me-manage dataset, jika
ingin memanggil fungsi pandas pada program cukup menuliskan dengan pd

# Impor dataset
dataset = pd.read_csv('Daftar_gaji.csv')
// Pada program line ini digunakan untuk memanggil data excel dengan nama “Daftar_gaji.csv”,
penamaan dataset sebagai penamaan bebas tapi di program ini menggunakan nama dataset.

X = dataset.iloc[:, :-1].values
// Pada program ini menjelaskan bahwa “:” merupakan index untuk menampilkan semua baris
sedangkan “:-1” merupakan index untuk menampilkan kolom 0 sampai kolom terakhir
NOTE : Jika index pada kolom berisi “:-2” maka yang akan ditampilkan adalah kolom 0 sampai
kolom terakhir sebelumnya (-2 artinya 1 index sebelum index terakhir)

y = dataset.iloc[:, 1].values
// Pada program ini menjelaskan bahwa “:” merupakan index untuk menampilkan semua baris
sedangkan “1” merupakan index untuk menampilkan irisan kolom ke 1

# Membagi data menjadi Training Set dan Test Set


from sklearn.model_selection import train_test_split
// Program ini sebagai library pada program training dan test set digunakan untuk proses import
train_test_split. Library train_test_split ini adalah sublibrary dari modul model_selection
di library sklearn.

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 1/3, random_state = 0)


// Pada program ini X_test sebagai data X yang ingin kita tes, y_train adalah variabel dependen
yang dilatih, dan y_test merupakan variabel dependen yang diuji. Pada perintah train_test_split
diisi dengan parameter arrays X,y yang menunjukkan arrays yang dipakai adalah X sebagai
variabel independen dan y sebagai variabel dependen, Sehingga parameter yang didapat adalah
train set adalah 2/3 dari dataset yang ada.

# Fitting Simple Linear Regression terhadap Training set


from sklearn.linear_model import LinearRegression
// Program ini sebagai library digunakan untuk proses import
LinearRegression. Library LinearRegression ini adalah sublibrary dari modul model_selection
library sklearn. Dimana kegunaan library LinearRegression untuk membuat model regresi.

regressor = LinearRegression()
// Pada line program ini digunakan untuk membuat objek regressor sebagai fungsi dari
LinearRegression

regressor.fit(X_train, y_train)
// Pada line program ini digunakan sebagai proses untuk membuat model machine learning
regresi. Artinya, model dimana sedang belajar untuk mencari hubungan antara X_train dan
y_train.

# Memprediksi hasil Test Set


y_pred = regressor.predict(X_test)
// Pada program ini digunakan sebagai memprediksi dengan menggunakan metode .predict.
Parameter yang diperlukan adalah variabel independen, jika menggunakan X_train maka
membuat prediksi berdasarkan pemahaman X_train, pemahaman itu sendiri dibuat berdasarkan
X_train. Maka dari itu menggunakan X_test digunakan untuk prediksi diaman untuk
membandingkannya dengan y_test.

# Visualisasi hasil Training Set


plt.scatter(X_train, y_train, color = 'red')
// Pada program ini digunakan untuk membuat scatter plot X_train dan y_train dengan warna
merah untuk data poinnya.

plt.plot(X_train, regressor.predict(X_train), color = 'blue')


// Pada line program ini digunakan untuk Data poin sumbu x adalah X_train dikarena untuk
melihat model regresi dari training set, sementara data poin sumbu y adalah prediksi dari X_train
dengan perintah regressor.predict(X_train). Maka didapat hasil jumlah data poin X_train (20
baris) dan X_test (10 baris) sudah berbeda, maka tidak mungkin bisa dibuat garis regresinya.

plt.title('Gaji vs Pengalaman (Training set)')


// Program ini untuk menampilkan judul di bagian atas grafik

plt.xlabel('Tahun bekerja')
// Program ini untuk membuat nama label di sumbu x

plt.ylabel('Gaji')
// Program ini untuk membuat nama label di sumbu y
plt.show()
// Program ini untuk mengeksekusi dan menampilkan program pada line 24 sampai 28

# Visualisasi hasil Test Set


plt.scatter(X_test, y_test, color = 'red')
// Pada program ini digunakan untuk membuat scatter plot X_test dan y_test dengan warna
merah untuk data poinnya.

plt.plot(X_train, regressor.predict(X_train), color = 'blue')


// Pada line program ini digunakan untuk Data poin sumbu x adalah X_train dikarena untuk
melihat model regresi dari training set, sementara data poin sumbu y adalah prediksi dari X_train
dengan perintah regressor.predict(X_train). Maka didapat hasil jumlah data poin X_train (20
baris) dan X_test (10 baris) sudah berbeda, maka tidak mungkin bisa dibuat garis regresinya.

plt.title('Gaji vs Pengalaman (Test set)')


// Program ini untuk menampilkan judul di bagian atas grafik Test set.

plt.xlabel('Tahun bekerja')
// Program ini untuk membuat nama label di sumbu x

plt.ylabel('Gaji')
// Program ini untuk membuat nama label di sumbu y

plt.show()
// Pada program ini untuk mengeksekusi dan menampilkan program pada line 32 sampai 37

Penjelasan Pemrograman Bahasa Phyton Multiple Linear


Regression
# Mengimpor library yang diperlukan
import numpy as np
// Sebagai library phyton digunakan untuk proses aritmatika, jika ingin memanggil fungsi numpy
maka pada saat penulisan program cukup menuliskan dengan np.

import matplotlib.pyplot as plt


// Sebagai library phyton digunakan untuk plotting 2D Python yang menghasilkan gambar dan
untuk penulisan program cukup menuliskan dengan plt.

import pandas as pd
// Sebagai library phyton yang digunakan untuk mengimpor dataset, dan me-manage dataset, jika
ingin memanggil fungsi pandas pada program cukup menuliskan dengan pd
# Mengimpor dataset
dataset = pd.read_csv('50_Startups.csv')
// Pada program line ini digunakan untuk memanggil data excel dengan nama “50_Startups.csv”,
penamaan dataset sebagai penamaan bebas tapi di program ini menggunakan nama dataset.

X = dataset.iloc[:, :-1].values
// Pada program ini menjelaskan bahwa “:” merupakan index untuk menampilkan semua baris
sedangkan “:-1” merupakan index untuk menampilkan kolom 0 sampai kolom terakhir
NOTE : Jika index pada kolom berisi “:-2” maka yang akan ditampilkan adalah kolom 0 sampai
kolom terakhir sebelumnya (-2 artinya 1 index sebelum index terakhir).

Tampilkan_X = pd.DataFrame(X) #visualisasi X


// Pada program ini digunakan untuk memanggil fungsi pandas pada library dimana untuk
menampilkan X sebagai data frame.

y = dataset.iloc[:, 4].values
// Pada program ini menjelaskan bahwa “:” merupakan index untuk menampilkan semua baris
sedangkan “4” merupakan index untuk menampilkan irisan kolom ke 4.

# Encode categorical data


from sklearn.preprocessing import LabelEncoder, OneHotEncoder
// Pada program ini digunakan untuk menerjemahkan dikarena machine learning merupakan
hitung hitungan secara matematis dikarenakan tidak mungkin pada data kategori diproses dengan
cara matematis juga

labelencoder_X = LabelEncoder()
// Pada program ini sama dengan program sebelumnya dimana machine learning hanya bisa
secara matematis sedangkan data proses tidak mungkin secara matematis .

X[:, 3] = labelencoder_X.fit_transform(X[:, 3])


// Line pada program ini arti dari “:” untuk menampilkan semua baris sedangkan “3” untuk
menampilkan irisan kolom ke 3 dimana untuk membuat dummy variabelnya.

onehotencoder = OneHotEncoder(categorical_features = [3])


// Pada line program ini melakukan transformasi OneHotEncoder dari hasil line ke 15
dikarenakan ada 3 kategori jenis maka penulisan harus menggunakan
“categorical_features = [3]”.

X = onehotencoder.fit_transform(X).toarray()
// Pada program ini untuk mengeksekusi proses transformasi kolom wilayah objek X menjadi
dummy variabel.

# Menghindari jebakan dummy variabel


X = X[:, 1:]
// Pada line ini digunakan untuk menghilangkan salah satu kolom dummy variabel agar tidak
terjebak dummy variable trap.
# Membagi data menjadi the Training set and Test set
from sklearn.model_selection import train_test_split
// Program ini sebagai library pada program training dan test set digunakan untuk proses import
train_test_split. Library train_test_split ini adalah sublibrary dari modul model_selection
di library sklearn.

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2, random_state = 0)


// Pada program ini X_test sebagai data X yang ingin kita tes, y_train adalah variabel dependen
yang dilatih, dan y_test merupakan variabel dependen yang diuji. Pada perintah train_test_split
diisi dengan parameter arrays X,y yang menunjukkan arrays yang dipakai adalah X sebagai
variabel independen dan y sebagai variabel dependen. Dimana parameternya berupa text size
sebesar 20%

# Membuat model Multiple Linear Regression dari Training set


from sklearn.linear_model import LinearRegression
// Program ini sebagai library digunakan untuk proses import
LinearRegression. Library LinearRegression ini adalah sublibrary dari modul model_selection
library sklearn. Dimana kegunaan library LinearRegression untuk membuat model regresi.

regressor = LinearRegression()
// Pada line program ini digunakan untuk membuat objek regressor sebagai fungsi dari
LinearRegression

regressor.fit(X_train, y_train)
// Pada line program ini digunakan sebagai proses untuk membuat model machine learning
regresi. Artinya, model dimana sedang belajar untuk mencari hubungan antara X_train dan
y_train.

# Memprediksi hasil Test set


y_pred = regressor.predict(X_test)
// Pada program ini digunakan sebagai memprediksi dengan menggunakan metode .predict.
Parameter yang diperlukan adalah variabel independen, jika menggunakan X_train maka
membuat prediksi berdasarkan pemahaman X_train, pemahaman itu sendiri dibuat berdasarkan
X_train. Maka dari itu menggunakan X_test digunakan untuk prediksi diaman untuk
membandingkannya dengan y_test.

# Memilih model multiple regresi yang paling baik dengan metode backward propagation
import statsmodels.api as sma
// Pada program ini untuk memanggil library statsmodels.api dan untuk memanggil library pada
program cukup menuliskan sma saja

X = sma.add_constant(X)
// Pada program ini untuk memberikan tambahan kolom baru di objek X dengan nilai 1.
import statsmodels.api as sm
// Pada program ini untuk memanggil library statsmodels.api dan untuk memanggil library pada
program cukup menuliskan sm nya saja.

X_opt = X[:, [0, 1, 2, 3, 4, 5]]


// Pada line program ini menjelaskan bahwa membuat objek X_opt sebagai daftar semua variabel
independen yang ingin dianalisis. Parameter nya adalah “:” untuk menampilkan semua baris
sedangkan untuk parameter “[0, 1, 2, 3, 4, 5]” untuk menampilkan kolom dari 0 sampai dengan 5
dan mengapa penulisan hanya “[0 1 2 3 4 5]” tidak dengan “:”dikarenakan untuk mempermudah
membuang satu per satu variabel independen yang tidak signifikan.

regressor_OLS = sm.OLS(endog = y, exog = X_opt).fit()


// Pada line program ini digunakan untuk membuat objek X_OLS sebagai objek untuk melihat
performa model dengan menggunakan metode OLS (Ordinary least squares) dari library sm.
Parameter yang diperlukan adalah endog sebagai variabel dependen, dan exog sebagai variabel
independennya (dengan sudah menambahkan ).maka dari itu endog = y, dan exog = X_opt.
Dan diharuskan menambahkan metode .fit() di belakangnya.

regressor_OLS.summary()
// Pada program ini untuk mengeksekusi program line 35 sampai dengan 40

X_opt = X[:, [0, 1, 3, 4, 5]]


// Pada line program ini menjelaskan bahwa membuat objek X_opt sebagai daftar semua variabel
independen yang ingin dianalisis. Parameter nya adalah “:” untuk menampilkan semua baris
sedangkan untuk parameter “[0, 1, 3, 4, 5]” untuk menampilkan kolom dari 0 sampai dengan 5
dan mengapa penulisan hanya “[0, 1, 3, 4, 5]” tidak dengan “:”dikarenakan untuk mempermudah
membuang satu per satu variabel independen yang tidak signifikan.

regressor_OLS = sm.OLS(endog = y, exog = X_opt).fit()


// Pada line program ini digunakan untuk membuat objek X_OLS sebagai objek untuk melihat
performa model dengan menggunakan metode OLS (Ordinary least squares) dari library sm.
Parameter yang diperlukan adalah endog sebagai variabel dependen, dan exog sebagai variabel
independennya (dengan sudah menambahkan ).maka dari itu endog = y, dan exog = X_opt.
Dan diharuskan menambahkan metode .fit() di belakangnya.

regressor_OLS.summary()
// Pada program ini untuk mengeksekusi program line 41 sampai dengan 43

X_opt = X[:, [0, 3, 4, 5]]


// Pada line program ini menjelaskan bahwa membuat objek X_opt sebagai daftar semua variabel
independen yang ingin dianalisis. Parameter nya adalah “:” untuk menampilkan semua baris
sedangkan untuk parameter “[0, 3, 4, 5]” untuk menampilkan kolom dari 0 sampai dengan 5 dan
mengapa penulisan hanya “[0, 3, 4, 5]” tidak dengan “:”dikarenakan untuk mempermudah
membuang satu per satu variabel independen yang tidak signifikan.
regressor_OLS = sm.OLS(endog = y, exog = X_opt).fit()
// Pada line program ini digunakan untuk membuat objek X_OLS sebagai objek untuk melihat
performa model dengan menggunakan metode OLS (Ordinary least squares) dari library sm.
Parameter yang diperlukan adalah endog sebagai variabel dependen, dan exog sebagai variabel
independennya (dengan sudah menambahkan ).maka dari itu endog = y, dan exog = X_opt.
Dan diharuskan menambahkan metode .fit() di belakangnya.

regressor_OLS.summary()
// Pada program ini untuk mengeksekusi program line 43 sampai dengan 46

X_opt = X[:, [0, 3, 5]]


// Pada line program ini menjelaskan bahwa membuat objek X_opt sebagai daftar semua variabel
independen yang ingin dianalisis. Parameter nya adalah “:” untuk menampilkan semua baris
sedangkan untuk parameter “[0, 3, 5]” untuk menampilkan kolom dari 0 sampai dengan 5 dan
mengapa penulisan hanya “[0, 3, 5]” tidak dengan “:”dikarenakan untuk mempermudah
membuang satu per satu variabel independen yang tidak signifikan.

regressor_OLS = sm.OLS(endog = y, exog = X_opt).fit()


// Pada line program ini digunakan untuk membuat objek X_OLS sebagai objek untuk melihat
performa model dengan menggunakan metode OLS (Ordinary least squares) dari library sm.
Parameter yang diperlukan adalah endog sebagai variabel dependen, dan exog sebagai variabel
independennya (dengan sudah menambahkan ).maka dari itu endog = y, dan exog = X_opt.
Dan diharuskan menambahkan metode .fit() di belakangnya.

regressor_OLS.summary()
// Pada program ini untuk mengeksekusi program line 47 sampai dengan 49

X_opt = X[:, [0, 3]]


// Pada line program ini menjelaskan bahwa membuat objek X_opt sebagai daftar semua variabel
independen yang ingin dianalisis. Parameter nya adalah “:” untuk menampilkan semua baris
sedangkan untuk parameter “[0, 3]” untuk menampilkan kolom dari 0 sampai dengan 5 dan
mengapa penulisan hanya “[0, 3]” tidak dengan “:”dikarenakan untuk mempermudah membuang
satu per satu variabel independen yang tidak signifikan.

regressor_OLS = sm.OLS(endog = y, exog = X_opt).fit()


// Pada line program ini digunakan untuk membuat objek X_OLS sebagai objek untuk melihat
performa model dengan menggunakan metode OLS (Ordinary least squares) dari library sm.
Parameter yang diperlukan adalah endog sebagai variabel dependen, dan exog sebagai variabel
independennya (dengan sudah menambahkan ).maka dari itu endog = y, dan exog = X_opt.
Dan diharuskan menambahkan metode .fit() di belakangnya.

regressor_OLS.summary()
// Pada program ini untuk mengeksekusi program line 50 sampai dengan 52

Anda mungkin juga menyukai