conogive {conogive}R Documentation

Estimate a Congeneric Normal-Ogive Model


conogive is used to estimate congeneric normal-ogive models (McDonald, R. P. (1997)).


conogive(data, use = "complete.obs", ...)



A data frame of observations or a named list with elements lambda, sigma, and cuts. See the details.


Passed to stats::cov; defaults to "complete.obs".


Passed to psych::fa, where fm = "ml" by default.


The data argument can be either a list containing the parameters of a normal-ogive model, or raw data. If actual data is passed to data, it is passed to psych::polychoric to estimate its polychoric correlation matrix and cutoffs. This is passed to psych::fa to do a barebones multivariate normal-ogive model. The ... arguments are passed to psych::fa, which is called with fm = "ml" by default.

Likert data should start with 1, not 0.


An object of class conogive.


McDonald, R. P. (1997). Normal-ogive multidimensional model. In W. J. van der Linden & R. K. Hambleton (Eds.), Handbook of Modern Item Response Theory (pp. 257–269). Springer. Moss, J. (2020). Please avoid the standardized alpha and the ordinal alpha.


if(require("psychTools")) {
  extraversion = psychTools::bfi[c("E1", "E2", "E3", "E4", "E5")]
  extraversion[, "E1"] = 7 - extraversion[, "E1"] # Reverse-coded item.
  extraversion[, "E2"] = 7 - extraversion[, "E2"] # Reverse-coded item.
  fit = conogive(extraversion)

[Package conogive version 1.0.0 Index]