In [6]:
import pandas as pd
import matplotlib.pyplot as plt # package for doing plotting (necessary for adding the line)
import statsmodels.formula.api as smf # package we'll be using for linear regression
%matplotlib inline
In [7]:
# Load the data.
df = pd.read_csv('../data/heights_weights_genders.csv')
df.head(3)
Out[7]:
In [8]:
# Create dataframes for men and women
df_male = df[df['Gender'] == 'Male']
df_female = df[df['Gender'] == 'Female']
In [17]:
# Male or female?
def male_or_female(gender):
if gender == '1':
return df_male
elif gender == '2':
return df_female
else:
print("Please enter the next time \'male\ or \'female\'.")
return NaN
In [30]:
# Calculate the weight.
def weight_predictor(user_height, gender):
user_height = float(user_height)
lm = smf.ols(formula="Weight~Height",data=male_or_female(gender)).fit()
intercept, height = lm.params
return int(height*user_height+intercept)
In [31]:
user_height = input("Please enter your height: ")
gender = input("Please enter [1] for \'male\' or [2] for \'female\': ")
print("Our estimation for your weight:", weight_predictor(user_height,gender), "pounds.")
In [ ]: