Friday, September 27, 2019

Koding Regresi Linear

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import sklearn

#memanggil dataset
dataset = pd.read_csv('drive/My Drive/Colab Notebooks/DataGaji.csv')
#Sumbu X adalah Gaji, dan Sumbu Y adalah Pengalaman Kerja
X = dataset.iloc[:, :-1].values
y = dataset.iloc[:, 1].values

# menampilkan isi sebagian dataset
dataku = pd.DataFrame(dataset)
#Visualisasi Data
plt.scatter(dataku.Tahun, dataku.Gaji)
plt.xlabel("Tahun")
plt.ylabel("Pendapatan")
plt.title("Grafik Masa Kerja VS Pendapatan")
plt.show()

# Memecah data menjadi data training dan testing
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test =\
    train_test_split(X, y, test_size = 0.2, random_state = 0)

# Melakukan Fitting Simple Linear Regression pada training set
from sklearn.linear_model import LinearRegression
regressor = LinearRegression()
regressor.fit(X_train, y_train)

#Visualisasi Proses Training
plt.figure(figsize=(10,8))
#Biru adalah data observasi
plt.scatter(X_train, y_train, color = 'blue')
#Garis Merah adalah hasil prediksi dari machine learning
plt.plot(X_train, regressor.predict(X_train), color = 'red')
plt.title ('Masa Kerja terhadap Pendapatan')
plt.xlabel('Masa kerja')
plt.ylabel('Pendapatan')
plt.show()

#Biru adalah data observasi
plt.scatter(X_test, y_test, color = 'blue')
#Merah adalah hasil prediksi dari machine learning
plt.plot(X_train, regressor.predict(X_train), color = 'red')
#Judul dan label
plt.title ('Salary vs Experience (Testing set)')
plt.xlabel('Years Experience')
plt.ylabel('Salary')
plt.show()