### Univariate Linear Regression in Python

## Introduction

Does*x*predict

*y*?

This is the basic question that linear regression aims to answer, or at least give a hint about. Technically speaking, linear regression is a way of establishing if two variables are related.

In this post we need to be familiar with the idea of both dependent and independent variables. Generally, the

**dependent**variable or "

*is the variable that we are measuring (it can help also to frame this as the*

**y"***outcome*). The

**independent**variable or "

**is the variable that is modified or changed. If these two variables are at all correlated, a change in the independent variable should result in a somewhat reliable change in the dependent variable.**

*x"*For example, lets say we are interested in how rainfall effects umbrella usage, we could hypothesize that the more it rains, the more likely people are to use an umbrella. In this case our independent variable is

*rainfall*lets quantify that as

*mm per day.*Our dependent variable is

*umbrella usage*and we can choose to quantify this as

*number of umbrellas seen per day*on some particular street. It seems obvious that people would be much more likely to use an umbrella when it is raining, but lets say you actually ran this study for a month and eventually you came up with some data and plotted it on a scatterplot like so:

As you can clearly see, more rain generally equals more umbrellas. We could easily state that a correlation exists between rainfall and umbrella usage.

If an increase in the independent variable leads to an increase in the dependent variable, it is called a

**positive correlation.**If an increase in the independent variable leads to a decrease in the dependent variable it is called a**negative correlation**.
This is all fine and dandy when dealing with two variables that are so obviously related. However, when dealing with larger, less clearly related data, researchers needed a way to quantify this relationship, and objectively test if two variables are truly correlated. That is why many techniques including linear regression were developed.

Rather than writing at length about the specific details of how linear regression works, something that has been explained on countless other websites, I would encourage you to read about it somewhere online, say here and then return to the tutorial once you have a solid understanding.

## Writing Code

To begin, we will need some example data to work with. Ive chosen the cricket chirps vs degrees Fahrenheit from this lovely website. All I have done is download the excel spreadsheet version and saved it as a .csv file with the name*cricket_data.csv*and made the headings a tad more informative

*.*You can download the sample data here

It is generally a good idea when working with any new dataset to first visualize it. This could easily be done in excel, but lets instead do it in Python.

Result:

It certainly looks like there is a positive correlation between these two variables, so lets import sk-learn and try to quantify this relationship with linear regression.

After running the above code it reported an R^2 score of

*0.69*. Pretty good considering the scale of the data. You can read more about R^2 or the*coefficient of determination*here.## Getting More Information

We could easily stop here, but for completeness-sake lets gather some more information about the regression.

### Coefficient

Getting the coefficient is simple but a little bit hidden in the way sklearn implements linear regression:

### Line of Best-Fit

If we want to plot the line of best fit we will need two values, the coefficient and the intercept:

**Result:**

###
**Pearson Correlation Coefficient**

We will calculate the Pearson Correlation Coefficient and the p-value (odds of obtaining this result by chance) in Scipy as sklearn does not support it.

## Conclusion

In this blog post we learned the basics of single-variable regression. Much of this translates closely to multivariate regression which I will post about if their is significant interest.

This comment has been removed by the author.

ReplyDeleteHi, thank you very much for new information, i learned something new. Very well written.It was so good to read and usefull to improve knowledge.Keep posting. If you are looking for any big data hadoop related information please visit our website.

ReplyDeletebig data hadoop training in bangalore.

This is the exact information I am been searching for, Thanks for sharing the required infos with the clear update and required points. To appreciate this I like to share some useful information regarding Microsoft Azure which is latest and newest,

ReplyDeleteData Science Training In Chennai

Data Science Online Training In Chennai

Data Science Training In Bangalore

Data Science Training In Hyderabad

Data Science Training In Coimbatore

Data Science Training

Data Science Online Training

It is amazing and wonderful to visit your site.Thanks for sharing this information,this is useful to me...data science courses

ReplyDeleteThe candidates must have a good command of mathematics and statistics to comprehend huge figures. data science course in india

ReplyDeleteI am reading your post from the beginning, it was so interesting to read & I feel thanks to you for posting such a good blog, keep updates regularly.I want to share about data science courses in malaysia

ReplyDeleteWow, amazing post! Really engaging, thank you.

ReplyDeletedata science course in delhi ncr

This is a splendid website! I"m extremely content with the remarks!.

ReplyDeletedata scientist training and placement in hyderabad

no deposit bonus forex 2021 - takipçi satın al - takipçi satın al - takipçi satın al - takipcialdim.com/tiktok-takipci-satin-al/ - instagram beğeni satın al - instagram beğeni satın al - google haritalara yer ekleme - btcturk - tiktok izlenme satın al - sms onay - youtube izlenme satın al - google haritalara yer ekleme - no deposit bonus forex 2021 - tiktok jeton hilesi - tiktok beğeni satın al - binance - takipçi satın al - uc satın al - finanspedia.com - sms onay - sms onay - tiktok takipçi satın al - tiktok beğeni satın al - twitter takipçi satın al - trend topic satın al - youtube abone satın al - instagram beğeni satın al - tiktok beğeni satın al - twitter takipçi satın al - trend topic satın al - youtube abone satın al - instagram beğeni satın al - tiktok takipçi satın al - tiktok beğeni satın al - twitter takipçi satın al - trend topic satın al - youtube abone satın al - instagram beğeni satın al - perde modelleri - instagram takipçi satın al - instagram takipçi satın al - cami avizesi - marsbahis

ReplyDeleteHi Thanks for Sharing this Valuable Information with us: this is very useful for me. Keep it Up.

ReplyDeleteai course in aurangabad

I want to leave a little comment to support and wish you the best of luck.we wish you the best of luck in all your blogging enedevors

ReplyDeletedata science course in thiruvananthapuram

Well, this got me thinking what other workouts are good for those of us who find ourselves on the road or have limited equipment options. data science training in kanpur

ReplyDeletemmorpg oyunlar

ReplyDeleteinstagram takipçi satın al

tiktok jeton hilesi

Tiktok Jeton Hilesi

antalya saç ekimi

referans kimliği nedir

İnstagram Takipçi Satın Al

metin2 pvp serverlar

instagram takipçi satın al

perde modelleri

ReplyDeletemobil onay

Mobil odeme bozdurma

nft nasıl alınır

Ankara evden eve nakliyat

Trafik Sigortasi

dedektör

https://kurma.website/

aşk kitapları