DATA605 Homework 12

Multiple linear regression

variable description
LifeExp average life expectancy for the country in years
InfantSurvival proportion of those surviving to one year or more
Under5Survival proportion of those surviving to five years or more
TBFree proportion of the population without TB.
PropMD proportion of the population who are MDs
PropRN proportion of the population who are RNs
PersExp mean personal expenditures on healthcare in US dollars at average exchange rate
GovtExp mean government expenditures per capita on healthcare, US dollars at average exchange rate
TotExp sum of personal and government expenditures.
library(RCurl)
## Loading required package: bitops
library(bitops)
#load the who dataset from github repo
x <- getURL("https://raw.githubusercontent.com/excelsiordata/DATA605/master/who.csv")
who <- read.csv(text = x, head=TRUE, sep=",", stringsAsFactors=FALSE)
head(who)
##               Country LifeExp InfantSurvival Under5Survival  TBFree
## 1         Afghanistan      42          0.835          0.743 0.99769
## 2             Albania      71          0.985          0.983 0.99974
## 3             Algeria      71          0.967          0.962 0.99944
## 4             Andorra      82          0.997          0.996 0.99983
## 5              Angola      41          0.846          0.740 0.99656
## 6 Antigua and Barbuda      73          0.990          0.989 0.99991
##        PropMD      PropRN PersExp GovtExp TotExp
## 1 0.000228841 0.000572294      20      92    112
## 2 0.001143127 0.004614439     169    3128   3297
## 3 0.001060478 0.002091362     108    5184   5292
## 4 0.003297297 0.003500000    2589  169725 172314
## 5 0.000070400 0.001146162      36    1620   1656
## 6 0.000142857 0.002773810     503   12543  13046

1. Provide a scatterplot of LifeExp~TotExp, and run simple linear regression. Do not transform the variables. Provide and interpret the F statistics, R^2, standard error,and p-values only. Discuss whether the assumptions of simple linear regression met.

Exp <- lm(LifeExp ~ TotExp, data = who)
plot(who$LifeExp ~ who$TotExp)
abline(Exp)

summary(Exp)
## 
## Call:
## lm(formula = LifeExp ~ TotExp, data = who)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -24.764  -4.778   3.154   7.116  13.292 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 6.475e+01  7.535e-01  85.933  < 2e-16 ***
## TotExp      6.297e-05  7.795e-06   8.079 7.71e-14 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 9.371 on 188 degrees of freedom
## Multiple R-squared:  0.2577, Adjusted R-squared:  0.2537 
## F-statistic: 65.26 on 1 and 188 DF,  p-value: 7.714e-14

\[ \hat{y}(LifeExp) = 64.75 + 6.297*10^{-5} * TotExp \]

\(F statistic: 65.26\) with a p-value of \(7.714^10^{-14}\) A statistically significant F-statistic indicates that the variability between group means is larger than the variability of the observations within the groups.

\(R^2 = 0.2577\): The model describes 25.77% of the variability in the data.

Standard error: \(6.297 * 10^{-5}\)

p-values: The probability that TotExp is not relevant in this model is \(7.714 * 10^{-14}\). The probability that the intercept is not relevant to this model is \(2 * 10^{-16}\). Both probabilities are incredibly small.

Assumptions of linear regression:

Linearity This assumption is not met. This data is clearly not linear.

#verify the linearity assumptions by plotting the residuals vs. TotExp
plot(Exp$residuals ~ who$TotExp)
abline(h = 0, lty = 3)

Nearly normal residuals This assumption is not met. The residuals are highly skewed.

hist(Exp$residuals)

qqnorm(Exp$residuals)
qqline(Exp$residuals) 

Constant variability Based on our plots above, the constant variability condition does not appear to be met.

2. Raise life expectancy to the 4.6 power (i.e., LifeExp^4.6). Raise total expenditures to the 0.06 power (nearly a log transform, TotExp^.06). Plot LifeExp^4.6 as a function of TotExp^.06, and r re-run the simple regression model using the transformed variables. Provide and interpret the F statistics, R^2, standard error, and p-values. Which model is “better?”

LifeExp4.6 <- who$LifeExp^4.6
TotExp0.06 <- who$TotExp^0.06

Exp2 <- lm(LifeExp4.6 ~ TotExp0.06)
plot(LifeExp4.6 ~ TotExp0.06)
abline(Exp2)

summary(Exp2)
## 
## Call:
## lm(formula = LifeExp4.6 ~ TotExp0.06)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -308616089  -53978977   13697187   59139231  211951764 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -736527910   46817945  -15.73   <2e-16 ***
## TotExp0.06   620060216   27518940   22.53   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 90490000 on 188 degrees of freedom
## Multiple R-squared:  0.7298, Adjusted R-squared:  0.7283 
## F-statistic: 507.7 on 1 and 188 DF,  p-value: < 2.2e-16

\[ \hat{y}(LifeExp) = -736527910 + 620060216 * TotExp \]

\(F statistic: 507.7\) with a p-value of \(2.2^10^{-16}\) A statistically significant F-statistic indicates that the variability between group means is larger than the variability of the observations within the groups.

\(R^2 = 0.7298\): The model describes 72.98% of the variability in the data.

Standard error: \(620060216\)

p-values: The probability that TotExp is not relevant in this model is \(2.2 * 10^{-16}\). The probability that the intercept is not relevant to this model is \(2 * 10^{-16}\). Both probabilities are incredibly small.

Given this information, I would say that the model generated using the transformed variables is better.

3. Using the results from 3, forecast life expectancy when TotExp^.06 =1.5. Then forecast life expectancy when TotExp^.06=2.5.

Life expectancy when TotExp^.06 = 1.5 is 193562414. Life expectancy when TotExp^.06 = 2.5 is 813622630.

-736527910 + 620060216 * 1.5
## [1] 193562414
-736527910 + 620060216 * 2.5
## [1] 813622630

4. Build the following multiple regression model and interpret the F Statistics, R^2, standard error, and p-values. How good is the model?

LifeExp = b0 + b1 x PropMd + b2 x TotExp + b3 x PropMD x TotExp

Exp3 <- lm(LifeExp ~ PropMD + TotExp, data = who)
summary(Exp3)
## 
## Call:
## lm(formula = LifeExp ~ PropMD + TotExp, data = who)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -23.996  -4.880   3.042   6.958  13.415 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 6.397e+01  7.706e-01  83.012  < 2e-16 ***
## PropMD      6.508e+02  1.946e+02   3.344 0.000998 ***
## TotExp      5.378e-05  8.074e-06   6.661 2.95e-10 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 9.127 on 187 degrees of freedom
## Multiple R-squared:  0.2996, Adjusted R-squared:  0.2921 
## F-statistic: 39.99 on 2 and 187 DF,  p-value: 3.479e-15

\[ \hat{y}(LifeExp) = 63.97 + (650.8*PropMD) + (5.378 * 10^{-5} * TotExp) \]

\(F statistic: 39.99\) with a p-value of \(3.47^10^{-15}\) A statistically significant F-statistic indicates that the variability between group means is larger than the variability of the observations within the groups.

\(R^2 = 0.2996\): The model describes 29.96% of the variability in the data.

Standard error: \(650.8\) for PropMD and \(5.378 * 10^{-5}\) for TotExp.

p-values: The probability that TotExp is not relevant in this model is \(2.95 * 10^{-10}\). The probability that TotExp is not relevant in this model is 0.000998. The probability that the intercept is not relevant to this model is \(2 * 10^{-16}\). Both probabilities are incredibly small.

The model isn’t bad. There are better models, and there are worse models.

5. Forecast LifeExp when PropMD=.03 and TotExp = 14. Does this forecast seem realistic? Why or why not?

Life expectancy is forecasted to be 83.49475 when PropMD = 0.03 and TotExp = 14. This is a realistic number, because this is within the range that you would expect a human being to survive.

63.97 + (650.8*0.03) + (5.378 * 10^{-5} * 14)
## [1] 83.49475