Rpub Link: http://rpubs.com/ssufian/553164
Baby weights, Part I. (9.1, p. 350) The Child Health and Development Studies investigate a range of topics. One study considered all pregnancies between 1960 and 1967 among women in the Kaiser Foundation Health Plan in the San Francisco East Bay area. Here, we study the relationship between smoking and weight of the baby. The variable smoke is coded 1 if the mother is a smoker, and 0 if not. The summary table below shows the results of a linear regression model for predicting the average birth weight of babies, measured in ounces, based on the smoking status of the mother.
The variability within the smokers and non-smokers are about equal and the distributions are symmetric. With these conditions satisfied, it is reasonable to apply the model. (Note that we don’t need to check linearity since the predictor has only two levels.)
ans:
avg_birth_wt = -8.94*smoke + 123.05
ans:
slope = -8.94 => if mother smokes (independent variable) = 1, then birth weight of baby decreased by
8.94 units
# for smoker -> s = 1
s <- 1
m <- -8.94
intercept <- 123.05
birth_wt <- m*s + intercept
print(paste0("predicted birth wt of smokers: ", birth_wt))
## [1] "predicted birth wt of smokers: 114.11"
ns <-0
ns_birth_wt <- m*ns + intercept
print(paste0("predicted birth wt of non-smokers: ", ns_birth_wt))
## [1] "predicted birth wt of non-smokers: 123.05"
ans:
Based on this linear regression model, yes because the slope of -8.94 has a t-stat value > 0.05 or
p-value that is much much less than 0.05. This means that the slope is statistically significant
on a 95% confidence level
Absenteeism, Part I. (9.4, p. 352) Researchers interested in the relationship between absenteeism from school and certain demographic characteristics of children collected data from 146 randomly sampled students in rural New South Wales, Australia, in a particular school year. Below are three observations from this data set.
The summary table below shows the results of a linear regression model for predicting the average number of days absent based on ethnic background (eth
: 0 - aboriginal, 1 - not aboriginal), sex (sex
: 0 - female, 1 - male), and learner status (lrn
: 0 - average learner, 1 - slow learner).
ans:
abst = 2.15lrn + 3.1sex -9.11*eth + 18.93
intercept1 <- 18.93
eth_slope <- -9.11
sex_slope <- 3.1
lrn_slope <- 2.15
ans:
eth_slope => aboriginal, yes or no
sex => female or male, yes or no
lrn => avg learner or slow learner, yes or no
NOTE: All the predictor variables are categorical (like dummy varaibles)
intercept1 <- 18.93
eth_slope <- -9.11
sex_slope <- 3.1
lrn_slope <- 2.15
eth1 <- 0
sex_1 <- 1
lrn_1 <- 1
abs_pred <- lrn_slope*lrn_1+lrn_slope*sex_1+eth_slope*eth1+intercept1
print(paste0("Predicted days of absteeisim: ", abs_pred))
## [1] "Predicted days of absteeisim: 23.23"
residual <- abs_pred- 2
print(paste0("Residual: ", residual ))
## [1] "Residual: 21.23"
SSE <- 240.57
SST <- 264.17
n <- 146
Rsquare <- 1- SSE/SST
print(paste0("R-square: ", Rsquare ))
## [1] "R-square: 0.0893364121588371"
Rsquare_adj <- 1-(1-Rsquare)*((n-1)/(n-2-1))
print(paste0("Adj R-square: ", Rsquare_adj))
## [1] "Adj R-square: 0.076599858482737"
Absenteeism, Part II. (9.8, p. 357) Exercise above considers a model that predicts the number of days absent using three predictors: ethnic background (eth
), gender (sex
), and learner status (lrn
). The table below shows the adjusted R-squared for the model as well as adjusted R-squared values for all models we evaluate in the first step of the backwards elimination process.
Which, if any, variable should be removed from the model first?
ans:
No Learner status should be removed becaue Adj R square results in lower R square and in this case,
it improves it, which is contracdictory
Challenger disaster, Part I. (9.16, p. 380) On January 28, 1986, a routine launch was anticipated for the Challenger space shuttle. Seventy-three seconds into the flight, disaster happened: the shuttle broke apart, killing all seven crew members on board. An investigation into the cause of the disaster focused on a critical seal called an O-ring, and it is believed that damage to these O-rings during a shuttle launch may be related to the ambient temperature during the launch. The table below summarizes observational data on O-rings for 23 shuttle missions, where the mission order is based on the temperature at the time of the launch. Temp gives the temperature in Fahrenheit, Damaged represents the number of damaged O-rings, and Undamaged represents the number of O-rings that were not damaged.
ans:
Low temperature seems to cause O-ring damages.
ans:
\(\epsilon^{11.663}\) when Temp = 0 F
The slope mean that for every 1 deg F above zero,
the probability of damaged o-rings decreases by \(\epsilon^{0.2162}\)
ans:
\(\ln(\frac{p}{1-p})\) = 11.633 - 0.2163*Temp
ans:
also indicates that lower temperatures result in greater probability of o-ring damage.
Challenger disaster, Part II. (9.18, p. 381) Exercise above introduced us to O-rings that were identified as a plausible explanation for the breakup of the Challenger space shuttle 73 seconds into takeoff in 1986. The investigation found that the ambient temperature at the time of the shuttle launch was closely related to the damage of O-rings, which are a critical component of the shuttle. See this earlier exercise if you would like to browse the original data.
\begin{center} \end{center}
where \(\hat{p}\) is the model-estimated probability that an O-ring will become damaged. Use the model to calculate the probability that an O-ring will become damaged at each of the following ambient temperatures: 51, 53, and 55 degrees Fahrenheit. The model-estimated probabilities for several additional ambient temperatures are provided below, where subscripts indicate the temperature:
\[\begin{align*} &\hat{p}_{57} = 0.341 && \hat{p}_{59} = 0.251 && \hat{p}_{61} = 0.179 && \hat{p}_{63} = 0.124 \\ &\hat{p}_{65} = 0.084 && \hat{p}_{67} = 0.056 && \hat{p}_{69} = 0.037 && \hat{p}_{71} = 0.024 \end{align*}\]
ans:
#at temp = 51
P_hat51 = exp(11.663-0.2162*51)/(1+exp(11.663-0.2162*51))
P_hat51
## [1] 0.6540297
#at temp = 53
P_hat53 = exp(11.663-0.2162*53)/(1+exp(11.663-0.2162*53))
P_hat53
## [1] 0.5509228
#at temp = 55
P_hat55 = exp(11.663-0.2162*55)/(1+exp(11.663-0.2162*55))
P_hat55
## [1] 0.4432456
T_F1 <- c(51,53,55,57,59,61,63,65,67,69,71)
P_model <- c(0.654,0.550,0.443,0.341,0.251,0.179,0.124,0.084,0.056,0.037,0.024)
P_meas <- c((5/6), (1/6), (1/6), (1/6), (0/6),(0/6),(0/6),(0/6),(0/6),(0/6),(1/6),(0/6),(1/6),(0/6),(0/6),(0/6),(0/6),(1/6),(0/6),(0/6),(0/6),(0/6),(0/6))
length(P_meas)
## [1] 23
T_F2 <- c(53,57,58,63,66,67,67,67,68,69,70,70,70,70,72,73,75,75,76,76,78,79,81)
length(T_F2)
## [1] 23
logistic_df <- data.frame(Temp = T_F1, P= P_model)
head(logistic_df)
meas_df <- data.frame(Temp = T_F2, P=P_meas)
head(meas_df)
suppressMessages(suppressWarnings(library(ggplot2)))
ggplot(NULL, aes(x=Temp,y=P)) + geom_line(data = logistic_df, colour = 'red')+geom_point(data=meas_df, colour='darkblue')
ans: