Estimation of Group Means and SDs from Binned Count Data

Education agencies often report school or district score distributions as the number of students scoring in each of several score ranges, or bins, separated by threshold scores, or cuts. The functions in the binest package translate those bin counts into estimates of the mean and standard deviation (SD). They do so using the heteroskedastic ordered probit (HETOP) model, which assumes that scores follow a normal distribution within each school or district, each of which has its own mean and SD. The binest package includes the fast_hetop() function, which fits the model much more quickly than previous implementations. The model is described by Reardon, Shear, Castellano and Ho (2017) ; a Bayesian variant is described by Lockwood, Castellano and Shear (2018) .


binest

Estimation of group-level means and standard deviations from binned (coarsened) count data. All three functions fit the same heteroskedastic ordered probit (HETOP) model, in which each group's values are normally distributed around a mean and SD of its own. They differ only in how they fit it, and they share a common output structure:

  • fast_hetop() — fits each group separately, solving closed-form truncated-normal score equations. Linear in the number of groups times the number of bins. This is the preferred function in the package.
  • mle_hetop() — maximizes the likelihood over all groups at once. Returns the same estimates as fast_hetop(estimator = "ML"), far more slowly. Deprecated in favor of fast_hetop().
  • fh_hetop() — fits the model by MCMC, placing a prior over the group parameters and reporting posterior means. Deprecated in favor of fast_hetop().

This package was previously called HETOP and was maintained by J. R. Lockwood; it is renamed and extended to reflect the broader functionality now included.

Installation

# install.packages("remotes")
remotes::install_github("paulvonhippel/binest")

(Or install.packages("binest") for the released version on CRAN.)

A quick example

library(binest)
data(tx_g6_math_2018)

ngk <- with(tx_g6_math_2018,
            cbind(unsatisfactory, approaches, meets, masters))
cuts <- c(1536, 1653, 1772)

## `scope` is required: Texas reports counts for every tested student,
## so each district's students are its whole population and the only
## uncertainty is the binning. Use scope = "sample" when the units are
## a sample from a larger population, which adds sampling error to the
## reported SEs.
fit <- fast_hetop(ngk, cutpoints_known = TRUE, cutpoints = cuts,
                  scope = "population")
cor(fit$est_raw$mean, tx_g6_math_2018$reported_mean)

See vignette("binest") for a full comparison of the three functions on the Texas STAAR Grade 6 mathematics data.

References

  • Fisher, R. A. (1922). On the mathematical foundations of theoretical statistics. Philosophical Transactions of the Royal Society of London A, 222, 309-368.
  • Lockwood, J. R., Castellano, K. E., & Shear, B. R. (2018). Flexible Bayesian models for inferences from coarsened, group-level achievement data. JEBS, 43(6), 663-692.
  • Reardon, S. F., Shear, B. R., Castellano, K. E., & Ho, A. D. (2017). Using heteroskedastic ordered probit models to recover moments of continuous test score distributions from coarsened data. JEBS, 42(1), 3-45.
  • Sheppard, W. F. (1898). On the calculation of the most probable values of frequency-constants for data arranged according to equidistant divisions of a scale. PLMS, 29, 353-380.

License

GPL (>= 2).

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("binest")

0.3-1 by Paul T. von Hippel, 23 days ago


Browse source code at https://github.com/cran/binest


Authors: Paul T. von Hippel [aut, cre] , David J. Hunter [aut] , J.R. Lockwood [aut] (Original HETOP package author)


Documentation:   PDF Manual  


GPL (>= 2) license


Imports splines, stats, utils

Suggests knitr, rmarkdown, R2jags


See at CRAN