In [1]:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
In [2]:
dataset = pd.read_csv('Position_Salaries.csv')
dataset.head(2)
Out[2]:
In [3]:
x = dataset.iloc[:,[1]].values
y = dataset.iloc[:,[2]].values
In [4]:
#from sklearn.cross_validation import train_test_split
#x_train,x_test,y_train,y_test = train_test_split(x,y)
In [5]:
#normal linear regression
from sklearn.linear_model import LinearRegression
reg = LinearRegression()
reg.fit(x,y)
y_pred = reg.predict(x)
plt.scatter(x,y,color = 'r')
plt.scatter(x,reg.predict(x),color = 'g')
plt.plot(x,y_pred)
plt.plot(x,y)
Out[5]:
In [6]:
#polynomial linear regression
from sklearn.preprocessing import PolynomialFeatures #to make poly feature from 1 column to degree+1 column
from sklearn.linear_model import LinearRegression
reg1 = LinearRegression()
poly_reg = PolynomialFeatures(degree = 3)
x_poly = poly_reg.fit_transform(x)
reg1.fit(x_poly,y)
plt.scatter(x,y,color = 'r')
plt.scatter(x,reg1.predict(x_poly),color = 'g')
plt.plot(x,reg1.predict(x_poly),color = 'b')
Out[6]:
In [7]:
print(reg.predict(6.5)) #linear regression
print(reg1.predict(poly_reg.fit_transform(6.5))) #polynomial linear regression
In [ ]:
In [ ]:
Comments
Post a Comment