# Turning a linear regression model into a curve – polynomial regression

In the previous sections, we assumed a linear relationship between explanatory and response variables. One way to account for the violation of linearity assumption is to use a polynomial regression model by adding polynomial terms:

Here, *d* denotes the degree of the polynomial. Although we can use polynomial regression to model a nonlinear relationship, it is still considered a multiple linear regression model because of the linear regression coefficients, *w*. In the following subsections, we will see how we can add such polynomial terms to an existing dataset conveniently and fit a polynomial regression model.

## Adding polynomial terms using scikit-learn

We will now learn how to use the `PolynomialFeatures`

transformer class from scikit-learn to add a quadratic term (*d* = 2) to a simple regression problem with one explanatory variable. Then, we will compare the polynomial to the linear fit by following...