oocflex: Ordered Optimal Classification (Flexible Version)

Description Usage Arguments Value Author(s) References See Also

View source: R/oocflex.R

Description

Performs Ordered Optimal Classification (OOC) with flexible strategies of estimation. OOC is an extension of Poole's (2000) nonparametric unfolding procedure for the analysis of ordinal choice data (e.g., “Strongly Agree,” “Somewhat Agree,” “Somewhat Disagree,” “Strongly Disagree”).

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
oocflex(
  votemat,
  dims = 2,
  minvotes = 10,
  lop = 0.001,
  polarity = c(1, 1),
  iter = 25,
  nv.method = "svm.reg",
  binary.method = "dominance",
  random.seed = NULL,
  ...
)

Arguments

votemat

A matrix of ordinal choice data, must be consecutive integers starting with 1. Binary choice should be coded so that 1 = Support, 2 = Oppose. Missing data must be coded as NA.

dims

Number of dimensions to estimate.

minvotes

Minimum number of votes required for a respondent to be included in the analysis.

lop

A proportion between 0 and 1, the cut-off used for excluding lopsided votes.

polarity

A vector specifying the row number of the respondent(s) constrained to have a positive (i.e., right-wing or conservative) score on each dimension.

iter

Number of iterations of the modified Optimal Classification algorithm.

nv.method

The method used to compute normal vectors at each step of the iteration. Current choices include: "oprobit" (Ordered probit regression), "ologit" (Ordered logistic regression), "svm.reg" (SVM: regression), "svm.class" (SVM: classification), and "krls" (Kernel regularized least squares). One can also assign a custom-made function to compute normal vectors. See more details in compute.nv.

binary.method

The method used to transform ordinal responses to binary ones. Following options are currently available:

  • "dominance" (default): Transformed to the matrix with binary choices organized in a dominance pattern.

  • "even": Transformed to the matrix with binary choices recoded to be as evenly-balanced as possible.

random.seed

If not NULL, scalar indicates the random seed for reproducibility.

...

Additional arguments passed to the function assigned by nv.method (See more details in compute.nv).

Value

An oocflexObject with the following elements

Author(s)

Tzu-Ping Liu jamesliu0222@gmail.com, Gento Kato gento.badger@gmail.com, and Sam Fuller sjfuller@ucdavis.edu. This code is the modified version of the ooc function written by Christopher Hare and Keith T. Poole.

References

See Also

compute.nv, nv.svm, and nv.krls


gentok/ipbridging documentation built on March 29, 2020, 3:06 a.m.