<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 1. Import the necessary packages to read in the data, plot, and create a linear regression model
Step1:  2. Read in the hanford.csv file
Step2:  <img src="images/hanford_variables.png">
3. Calculate the basic descriptive statistics on the data
Step3:  4. Calculate the coefficient of correlation (r) and generate the scatter plot. Does there seem to be a correlation worthy of investigation?
Step4:  5. Create a linear regression model based on the available data to predict the mortality rate given a level of exposure
Step5:  6. Plot the linear regression line on the scatter plot of values. Calculate the r^2 (coefficient of determination)
<ASSISTANT_TASK:>
Python Code:
import pandas as pd
%matplotlib inline
import matplotlib.pyplot as plt # package for doing plotting (necessary for adding the line)
import statsmodels.formula.api as smf
Explanation: 1. Import the necessary packages to read in the data, plot, and create a linear regression model
End of explanation
df = pd.read_csv("hanford.csv")
Explanation: 2. Read in the hanford.csv file
End of explanation
df.mean()
df.median()
iqr = df.quantile(q=0.75)- df.quantile(q=0.25)
iqr
UAL= (iqr*1.5) + df.quantile(q=0.75)
UAL
LAL= df.quantile(q=0.25) - (iqr*1.5)  
LAL
Explanation: <img src="images/hanford_variables.png">
3. Calculate the basic descriptive statistics on the data
End of explanation
df.corr()
df
#fig, ax = plt.subplots()
ax= df.plot(kind='scatter', y='Exposure', x='Mortality', color='green', figsize= (7,5))
ax
Explanation: 4. Calculate the coefficient of correlation (r) and generate the scatter plot. Does there seem to be a correlation worthy of investigation?
End of explanation
lm = smf.ols(formula="Mortality ~ Exposure",data=df).fit()
lm.params
def mortality_rate_calculator(exposure): 
    return (114.715631 + (9.231456 * float(exposure)))
df['predicted_mortality_rate'] = df['Exposure'].apply(mortality_rate_calculator)
df
Explanation: 5. Create a linear regression model based on the available data to predict the mortality rate given a level of exposure
End of explanation
intercept, slope = lm.params
#DONT KNOW WHAT HAPPENED HERE :S
df.plot(kind='scatter', y='Exposure', x='Mortality', color='green', figsize= (7,5))
plt.plot(df["Exposure"],slope *df["Exposure"]+ intercept,"-",color="red")
Explanation: 6. Plot the linear regression line on the scatter plot of values. Calculate the r^2 (coefficient of determination)
End of explanation
<END_TASK>