##C2

# Load necessary libraries
library(wooldridge)
library(lmtest)
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
# Load the data
data("barium")

# (i) Add a linear time trend to equation 10.22
barium$trend <- seq_along(barium$chnimp)
model1 <- lm(lchnimp ~ lchempi + lgas + lrtwex + befile6 + affile6 + afdec6 + trend, data = barium)
summary(model1)
## 
## Call:
## lm(formula = lchnimp ~ lchempi + lgas + lrtwex + befile6 + affile6 + 
##     afdec6 + trend, data = barium)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.94317 -0.31168  0.03172  0.36366  1.21218 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)   
## (Intercept) -2.367526  20.782165  -0.114  0.90949   
## lchempi     -0.686236   1.239711  -0.554  0.58089   
## lgas         0.465679   0.876178   0.531  0.59604   
## lrtwex       0.078224   0.472440   0.166  0.86876   
## befile6      0.090470   0.251289   0.360  0.71945   
## affile6      0.097006   0.257313   0.377  0.70683   
## afdec6      -0.351502   0.282542  -1.244  0.21584   
## trend        0.012706   0.003844   3.305  0.00124 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.5748 on 123 degrees of freedom
## Multiple R-squared:  0.3616, Adjusted R-squared:  0.3252 
## F-statistic: 9.951 on 7 and 123 DF,  p-value: 8.358e-10
# (ii) Test for joint significance of all variables except the time trend
reduced_model <- lm(lchnimp ~ trend, data = barium)
anova(reduced_model, model1)
## Analysis of Variance Table
## 
## Model 1: lchnimp ~ trend
## Model 2: lchnimp ~ lchempi + lgas + lrtwex + befile6 + affile6 + afdec6 + 
##     trend
##   Res.Df    RSS Df Sum of Sq      F Pr(>F)
## 1    129 41.709                           
## 2    123 40.638  6     1.071 0.5402 0.7767
# (iii) Add monthly dummy variables for seasonality
barium$month <- factor(paste("Month", barium$t))  # Create a factor for each month
model2 <- lm(lchnimp ~ lchempi + lgas + lrtwex + befile6 + affile6 + afdec6 + trend + month, data = barium)
summary(model2)
## 
## Call:
## lm(formula = lchnimp ~ lchempi + lgas + lrtwex + befile6 + affile6 + 
##     afdec6 + trend + month, data = barium)
## 
## Residuals:
## ALL 131 residuals are 0: no residual degrees of freedom!
## 
## Coefficients: (7 not defined because of singularities)
##                  Estimate Std. Error t value Pr(>|t|)
## (Intercept)     30.018088        NaN     NaN      NaN
## lchempi        -20.723860        NaN     NaN      NaN
## lgas             2.140258        NaN     NaN      NaN
## lrtwex           4.935116        NaN     NaN      NaN
## befile6          0.163338        NaN     NaN      NaN
## affile6         -1.205505        NaN     NaN      NaN
## afdec6          -1.361630        NaN     NaN      NaN
## trend            0.052536        NaN     NaN      NaN
## monthMonth 10    0.631557        NaN     NaN      NaN
## monthMonth 100   0.416163        NaN     NaN      NaN
## monthMonth 101   0.692180        NaN     NaN      NaN
## monthMonth 102   0.836918        NaN     NaN      NaN
## monthMonth 103   1.278961        NaN     NaN      NaN
## monthMonth 104   0.628963        NaN     NaN      NaN
## monthMonth 105   1.452161        NaN     NaN      NaN
## monthMonth 106   0.832783        NaN     NaN      NaN
## monthMonth 107   1.249763        NaN     NaN      NaN
## monthMonth 108   1.725142        NaN     NaN      NaN
## monthMonth 109   1.858445        NaN     NaN      NaN
## monthMonth 11    1.656938        NaN     NaN      NaN
## monthMonth 110   1.358692        NaN     NaN      NaN
## monthMonth 111   1.307121        NaN     NaN      NaN
## monthMonth 112   1.714306        NaN     NaN      NaN
## monthMonth 113   1.925159        NaN     NaN      NaN
## monthMonth 114   2.382761        NaN     NaN      NaN
## monthMonth 115   2.273565        NaN     NaN      NaN
## monthMonth 116   2.104242        NaN     NaN      NaN
## monthMonth 117   1.745703        NaN     NaN      NaN
## monthMonth 118   1.952273        NaN     NaN      NaN
## monthMonth 119   2.864541        NaN     NaN      NaN
## monthMonth 12    2.419302        NaN     NaN      NaN
## monthMonth 120   3.825936        NaN     NaN      NaN
## monthMonth 121   2.849263        NaN     NaN      NaN
## monthMonth 122   2.600042        NaN     NaN      NaN
## monthMonth 123   3.006609        NaN     NaN      NaN
## monthMonth 124   2.955993        NaN     NaN      NaN
## monthMonth 125   3.011999        NaN     NaN      NaN
## monthMonth 126   2.915867        NaN     NaN      NaN
## monthMonth 127   2.619007        NaN     NaN      NaN
## monthMonth 128   2.677843        NaN     NaN      NaN
## monthMonth 129   3.514136        NaN     NaN      NaN
## monthMonth 13    2.143598        NaN     NaN      NaN
## monthMonth 130   3.560862        NaN     NaN      NaN
## monthMonth 131   3.874585        NaN     NaN      NaN
## monthMonth 14    3.121314        NaN     NaN      NaN
## monthMonth 15    2.053900        NaN     NaN      NaN
## monthMonth 16    2.019411        NaN     NaN      NaN
## monthMonth 17    2.219462        NaN     NaN      NaN
## monthMonth 18    2.297945        NaN     NaN      NaN
## monthMonth 19    2.928761        NaN     NaN      NaN
## monthMonth 2    -0.922799        NaN     NaN      NaN
## monthMonth 20    2.936240        NaN     NaN      NaN
## monthMonth 21    2.575332        NaN     NaN      NaN
## monthMonth 22    3.229411        NaN     NaN      NaN
## monthMonth 23    3.166172        NaN     NaN      NaN
## monthMonth 24    2.233555        NaN     NaN      NaN
## monthMonth 25    3.133780        NaN     NaN      NaN
## monthMonth 26    2.587289        NaN     NaN      NaN
## monthMonth 27    0.782395        NaN     NaN      NaN
## monthMonth 28    0.895323        NaN     NaN      NaN
## monthMonth 29    0.444203        NaN     NaN      NaN
## monthMonth 3     0.008499        NaN     NaN      NaN
## monthMonth 30    0.710304        NaN     NaN      NaN
## monthMonth 31   -0.484045        NaN     NaN      NaN
## monthMonth 32    1.070222        NaN     NaN      NaN
## monthMonth 33    1.496134        NaN     NaN      NaN
## monthMonth 34   -0.440856        NaN     NaN      NaN
## monthMonth 35    1.451494        NaN     NaN      NaN
## monthMonth 36    1.394101        NaN     NaN      NaN
## monthMonth 37    1.629257        NaN     NaN      NaN
## monthMonth 38    1.371902        NaN     NaN      NaN
## monthMonth 39    1.600351        NaN     NaN      NaN
## monthMonth 4     0.312334        NaN     NaN      NaN
## monthMonth 40    1.606312        NaN     NaN      NaN
## monthMonth 41   -0.014344        NaN     NaN      NaN
## monthMonth 42    1.071418        NaN     NaN      NaN
## monthMonth 43    0.658011        NaN     NaN      NaN
## monthMonth 44    1.386397        NaN     NaN      NaN
## monthMonth 45    0.179435        NaN     NaN      NaN
## monthMonth 46    0.256629        NaN     NaN      NaN
## monthMonth 47   -0.639905        NaN     NaN      NaN
## monthMonth 48   -1.523474        NaN     NaN      NaN
## monthMonth 49   -0.726520        NaN     NaN      NaN
## monthMonth 5    -0.377536        NaN     NaN      NaN
## monthMonth 50   -0.153144        NaN     NaN      NaN
## monthMonth 51   -1.153322        NaN     NaN      NaN
## monthMonth 52   -0.801472        NaN     NaN      NaN
## monthMonth 53   -2.620852        NaN     NaN      NaN
## monthMonth 54   -2.712307        NaN     NaN      NaN
## monthMonth 55   -2.267198        NaN     NaN      NaN
## monthMonth 56   -2.620333        NaN     NaN      NaN
## monthMonth 57   -2.868556        NaN     NaN      NaN
## monthMonth 58   -2.752935        NaN     NaN      NaN
## monthMonth 59   -3.164075        NaN     NaN      NaN
## monthMonth 6    -0.140381        NaN     NaN      NaN
## monthMonth 60   -1.924479        NaN     NaN      NaN
## monthMonth 61   -2.073480        NaN     NaN      NaN
## monthMonth 62   -0.986188        NaN     NaN      NaN
## monthMonth 63   -1.788952        NaN     NaN      NaN
## monthMonth 64   -0.544634        NaN     NaN      NaN
## monthMonth 65   -0.480952        NaN     NaN      NaN
## monthMonth 66   -1.489202        NaN     NaN      NaN
## monthMonth 67   -1.355613        NaN     NaN      NaN
## monthMonth 68          NA         NA      NA       NA
## monthMonth 69    0.432396        NaN     NaN      NaN
## monthMonth 7    -0.309119        NaN     NaN      NaN
## monthMonth 70    1.136004        NaN     NaN      NaN
## monthMonth 71    0.960171        NaN     NaN      NaN
## monthMonth 72    0.852304        NaN     NaN      NaN
## monthMonth 73    1.278766        NaN     NaN      NaN
## monthMonth 74    0.562158        NaN     NaN      NaN
## monthMonth 75          NA         NA      NA       NA
## monthMonth 76   -1.384688        NaN     NaN      NaN
## monthMonth 77   -1.087337        NaN     NaN      NaN
## monthMonth 78   -0.283071        NaN     NaN      NaN
## monthMonth 79   -0.506609        NaN     NaN      NaN
## monthMonth 8    -1.063904        NaN     NaN      NaN
## monthMonth 80   -0.125721        NaN     NaN      NaN
## monthMonth 81   -0.332966        NaN     NaN      NaN
## monthMonth 82   -0.521027        NaN     NaN      NaN
## monthMonth 83    0.129260        NaN     NaN      NaN
## monthMonth 84    0.169652        NaN     NaN      NaN
## monthMonth 85   -0.935950        NaN     NaN      NaN
## monthMonth 86    0.734411        NaN     NaN      NaN
## monthMonth 87          NA         NA      NA       NA
## monthMonth 88   -1.708469        NaN     NaN      NaN
## monthMonth 89   -1.460694        NaN     NaN      NaN
## monthMonth 9     1.142525        NaN     NaN      NaN
## monthMonth 90   -0.926025        NaN     NaN      NaN
## monthMonth 91   -0.449112        NaN     NaN      NaN
## monthMonth 92    0.442842        NaN     NaN      NaN
## monthMonth 93   -0.622531        NaN     NaN      NaN
## monthMonth 94   -0.324278        NaN     NaN      NaN
## monthMonth 95   -0.813724        NaN     NaN      NaN
## monthMonth 96          NA         NA      NA       NA
## monthMonth 97          NA         NA      NA       NA
## monthMonth 98          NA         NA      NA       NA
## monthMonth 99          NA         NA      NA       NA
## 
## Residual standard error: NaN on 0 degrees of freedom
## Multiple R-squared:      1,  Adjusted R-squared:    NaN 
## F-statistic:   NaN on 130 and 0 DF,  p-value: NA

#C9

data("volat")

# (i) Signs for beta coefficients
# Beta_1 (pcip): Expected to be positive (higher industrial production might boost market returns)
# Beta_2 (i3): Expected to be negative (higher T-bill returns may attract investors away from stocks)

# (ii) Estimate the equation using OLS
model <- lm(rsp500 ~ pcip + i3, data = volat)
summary(model)
## 
## Call:
## lm(formula = rsp500 ~ pcip + i3, data = volat)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -157.871  -22.580    2.103   25.524  138.137 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 18.84306    3.27488   5.754 1.44e-08 ***
## pcip         0.03642    0.12940   0.281   0.7785    
## i3          -1.36169    0.54072  -2.518   0.0121 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 40.13 on 554 degrees of freedom
##   (1 observation deleted due to missingness)
## Multiple R-squared:  0.01189,    Adjusted R-squared:  0.008325 
## F-statistic: 3.334 on 2 and 554 DF,  p-value: 0.03637
# (iii) Check which variables are statistically significant
# This will be shown in the summary output (look at the p-values for pcip and i3)

# (iv) Interpret results
# Use the coefficients and their significance to determine if the return on the S&P 500 is predictable