# Explain with a case study how to implement polynomial regression in R.

383    Asked by bhagwatidubey in Data Science , Asked on Nov 9, 2019

For polynomial regression, we have to read the data.

# Importing the dataset

dataset = dataset[2:3]

Although the dataset is small, so we will not be splitting for training and testing

First we will fit using linear regression model

# Fitting Linear Regression to the dataset

lin_reg = lm(formula = Salary ~ .,

data = dataset)

Now we will be fitting with polynomial model

# Fitting Polynomial Regression to the dataset

dataset\$Level2 = dataset\$Level^2

dataset\$Level3 = dataset\$Level^3

dataset\$Level4 = dataset\$Level^4

poly_reg = lm(formula = Salary ~ .,

data = dataset)

Now we will visualize both linear and polynomial model

# Visualising the Linear Regression results

# install.packages('ggplot2')

library(ggplot2)

ggplot() +

geom_point(aes(x = dataset\$Level, y = dataset\$Salary),

colour = 'red') +

geom_line(aes(x = dataset\$Level, y = predict(lin_reg, newdata = dataset)),

colour = 'blue') +

ggtitle('Truth or Bluff (Linear Regression)') +

xlab('Level') +

ylab('Salary')

# Visualising the Polynomial Regression results

# install.packages('ggplot2')

library(ggplot2)

ggplot() +

geom_point(aes(x = dataset\$Level, y = dataset\$Salary),

colour = 'red') +

geom_line(aes(x = dataset\$Level, y = predict(poly_reg, newdata = dataset)),

colour = 'blue') +

ggtitle('Truth or Bluff (Polynomial Regression)') +

xlab('Level') +

ylab('Salary')

Now we will predict new result using both the models

# Predicting a new result with Linear Regression

predict(lin_reg, data.frame(Level = 6.5))

# Predicting a new result with Polynomial Regression

predict(poly_reg, data.frame(Level = 6.5,

Level2 = 6.5^2,

Level3 = 6.5^3,

Level4 = 6.5^4))