Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Data Science Algorithms in a Week

You're reading from   Data Science Algorithms in a Week Top 7 algorithms for scientific computing, data analysis, and machine learning

Arrow left icon
Product type Paperback
Published in Oct 2018
Publisher Packt
ISBN-13 9781789806076
Length 214 pages
Edition 2nd Edition
Languages
Tools
Arrow right icon
Authors (2):
Arrow left icon
David Toth David Toth
Author Profile Icon David Toth
David Toth
David Natingga David Natingga
Author Profile Icon David Natingga
David Natingga
Arrow right icon
View More author details
Toc

Table of Contents (12) Chapters Close

Preface 1. Classification Using K-Nearest Neighbors 2. Naive Bayes FREE CHAPTER 3. Decision Trees 4. Random Forests 5. Clustering into K Clusters 6. Regression 7. Time Series Analysis 8. Python Reference 9. Statistics 10. Glossary of Algorithms and Methods in Data Science
11. Other Books You May Enjoy

Weight prediction from height – linear regression on real-world data


Here, we are predicting the weight of a man from his height by using linear regression on the following data:

Height in cm

Weight in kg

180

75

174

71

184

83

168

63

178

70

172

?

 

We would like to estimate the weight of a man given that his height is 172 cm.

Analysis

In the previous example of Fahrenheit and Celsius conversion, the data fitted the linear model perfectly. Thus, we could perform even a simple mathematical analysis (solving basic equations) to gain the conversion formula. Most data in the real world does not fit a model perfectly. For such an analysis, it would be good to find a model that fits the given data with minimal errors. We can use the least squares method to find such a linear model.

Input:

We put the data from the preceding table into the vectors and try to fit the linear model:

# source_code/6/weight_prediction.py
import numpy as np
from scipy.linalg import lstsq

height = np.array([180,174,184,168,178])
weight = np...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €18.99/month. Cancel anytime