Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

ML | sklearn.linear_model.LinearRegression() in Python

  • Last Updated : 26 Sep, 2018

This is Ordinary least squares Linear Regression from sklearn.linear_module.
Syntax :
sklearn.linear_model.LinearRegression(fit_intercept=True, normalize=False, copy_X=True, n_jobs=1):

Parameters :

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning - Basic Level Course

fit_intercept : [boolean, Default is True] Whether to calculate intercept for the model.
normalize : [boolean, Default is False] Normalisation before regression.
copy_X : [boolean, Default is True] If true, make a copy of X else overwritten.
n_jobs : [int, Default is 1] If -1 all CPU’s are used. This will speedup the working for large datasets to process.

In the given dataset, R&D Spend, Administration Cost and Marketing Spend of 50 Companies are given along with the profit earned. The target is to prepare ML model which can predict the profit value of a company if the value of its R&D Spend, Administration Cost and Marketing Spend are given.

To download dataset click here.

Code: Use of Linear Regression to predict the Companies Profit

# Importing the libraries
import numpy as np
import pandas as pd
# Importing the dataset
print ("Dataset.head() \n ", dataset.head())
# Input values
x = dataset.iloc[:, :-1].values
print("\nFirst 10 Input Values : \n", x[0:10, :])


print ("Dataset Info : \n")
print (

# Input values
x = dataset.iloc[:, :-1].values
print("\nFirst 10 Input Values : \n", x[0:10, :])
# Output values
y = dataset.iloc[:, 3].values 
y1 = y
y1 = y1.reshape(-1, 1)
print("\n\nFirst 10 Output true value : \n", y1[0:10, :])


# Dividing input and output data to train and test data
# Training : Testing = 80 : 20
from sklearn.cross_validation import train_test_split
xtrain, xtest, ytrain, ytest = train_test_split(x, y, test_size = 0.2
                                                     random_state = 0)
# Feature Scaling
# Multilinear regression takes care of Feature Scaling
# So we need not do it manually 
# Fitting Multi Linear regression model to training model
from sklearn.linear_model import LinearRegression
regressor = LinearRegression(), ytrain)
# predicting the test set results
y_pred = regressor.predict(xtest)
y_pred1 = y_pred
y_pred1 = y_pred1.reshape(-1,1)
print ("\nFirst 10 Predicted value : \n", y_pred1[0:10, :])

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!