PublicSchools            package:sandwich            R Documentation

_U_S _E_x_p_e_n_d_i_t_u_r_e_s _f_o_r _P_u_b_l_i_c _S_c_h_o_o_l_s

_D_e_s_c_r_i_p_t_i_o_n:

     Per capita expenditure on public schools and per capita income by
     state in 1979.

_U_s_a_g_e:

     data(PublicSchools)

_F_o_r_m_a_t:

     A data frame containing 51 observations of 2 variables.

     _E_x_p_e_n_d_i_t_u_r_e per capita expenditure on public schools,

     _I_n_c_o_m_e per capita income.

_S_o_u_r_c_e:

     Table 14.1 in Greene (1993)

_R_e_f_e_r_e_n_c_e_s:

     Cribari-Neto F. (2004), Asymptotic Inference Under
     Heteroskedasticity of Unknown Form, emph{Computational Statistics
     & Data Analysis}, *45*, 215-233.

     Greene W.H. (1993), _Econometric Analysis_, 2nd edition. Macmillan
     Publishing Company, New York.

     US Department of Commerce (1979), _Statistical Abstract of the
     United States_. US Government Printing Office, Washington, DC.

_E_x_a_m_p_l_e_s:

     ## Willam H. Greene, Econometric Analysis, 2nd Ed.
     ## Chapter 14
     ## load data set, p. 385, Table 14.1
     data(PublicSchools)

     ## omit NA in Wisconsin and scale income
     ps <- na.omit(PublicSchools)
     ps$Income <- ps$Income * 0.0001

     ## fit quadratic regression, p. 385, Table 14.2
     fmq <- lm(Expenditure ~ Income + I(Income^2), data = ps)
     summary(fmq)

     ## compare standard and HC0 standard errors
     ## p. 391, Table 14.3
     library(sandwich)
     coef(fmq)
     sqrt(diag(vcovHC(fmq, type = "const")))
     sqrt(diag(vcovHC(fmq, type = "HC0")))

     if(require(lmtest)) {
     ## compare t ratio
     coeftest(fmq, vcov = vcovHC(fmq, type = "HC0"))

     ## White test, p. 393, Example 14.5
     wt <- lm(residuals(fmq)^2 ~ poly(Income, 4), data = ps)
     wt.stat <- summary(wt)$r.squared * nrow(ps)
     c(wt.stat, pchisq(wt.stat, df = 3, lower = FALSE))

     ## Bresch-Pagan test, p. 395, Example 14.7
     bptest(fmq, studentize = FALSE)
     bptest(fmq)

     ## Francisco Cribari-Neto, Asymptotic Inference, CSDA 45
     ## quasi z-tests, p. 229, Table 8
     ## with Alaska
     coeftest(fmq, df = Inf)[3,4]
     coeftest(fmq, df = Inf, vcov = vcovHC(fmq, type = "HC0"))[3,4]
     coeftest(fmq, df = Inf, vcov = vcovHC(fmq, type = "HC3"))[3,4]
     coeftest(fmq, df = Inf, vcov = vcovHC(fmq, type = "HC4"))[3,4]
     ## without Alaska (observation 2)
     fmq1 <- lm(Expenditure ~ Income + I(Income^2), data = ps[-2,])
     coeftest(fmq1, df = Inf)[3,4]
     coeftest(fmq1, df = Inf, vcov = vcovHC(fmq1, type = "HC0"))[3,4]
     coeftest(fmq1, df = Inf, vcov = vcovHC(fmq1, type = "HC3"))[3,4]
     coeftest(fmq1, df = Inf, vcov = vcovHC(fmq1, type = "HC4"))[3,4]
     }

     ## visualization, p. 230, Figure 1
     plot(Expenditure ~ Income, data = ps,
       xlab = "per capita income",
       ylab = "per capita spending on public schools")
     inc <- seq(0.5, 1.2, by = 0.001)
     lines(inc, predict(fmq, data.frame(Income = inc)), col = 4)
     fml <- lm(Expenditure ~ Income, data = ps)
     abline(fml)
     text(ps[2,2], ps[2,1], rownames(ps)[2], pos = 2)

