rollcall data via the spatial voting model;
analogous to fitting educational testing data via an item-response
model. Model fitting via Markov chain Monte Carlo (MCMC).ideal(object, codes = object$codes,
dropList = list(codes = "notInLegis", lop = 0),
d = 1, maxiter = 10000, thin = 100, burnin = 5000,
impute = FALSE, meanzero = FALSE,
priors = NULL, startvals = NULL,
store.item = FALSE, file = NULL,
verbose=FALSE)rollcallthinburnin will be recorded. Must be a
multiple of thin.logical, whether to treat missing entries
of the rollcall matrix as missing at random, sampling from the
predictive density of the missing entries at each MCMC iteration.logical, whether estimated ideal points
should have a mean of zero and standard deviation one. If TRUE,
any user-supplied priors will be ignored. This option is helpful
for unidimlist of parameters (means and variances)
specifying normal priors for the legislators' ideal points. The
default is NULL, in which case prior values will be generated
for both legislators' ideal points and roll calllist containing start values for
legislators' ideal points and item parameters. Default is
NULL, in which case start values will be generated for both
legislators' ideal points and item parameters. See Details. Iflogical, whether item discrimination
parameters should be stored. Storing item discrimination parameters
can consume a large amount of memory.NULL, in which case MCMC output is stored in memory.
Note that post-estimation commands like plot will not
work unless MCMC output is stored in memory.FALSE, which generates
relatively little output to the R console during executionlist of class ideal with named componentsnumeric, integer, number of legislators in the
analysis, after any subseting via processing the dropList.numeric, integer, number of rollcalls in roll
call matrix, after any subseting via processing the dropList.numeric, integer, number of dimensions
fitted.matrix containing the MCMC samples for
the ideal point of each legislator in each dimension for each
iteration from burnin to maxiter, at an interval of
thin. Rows of the x matrix index iterations; columns
index legislators.matrix containing the MCMC samples
for the item discrimination parameter for each item in each
dimension, plus an intercept, for each iteration from burnin
to maxiter, at an interval of thin. Rows of the
beta matrix index MCMC iterations; columns index parameters.matrix containing the means of the
MCMC samples for the ideal point of each legislator in each dimension,
using iterations burnin to maxiter, at an interval of
thin; i.e., the column means of x.matrix containing the means of
the MCMC samples for the vote-specific parameters, using iterations
burnin to maxiter, at an interval of thin;
i.e., the column means of beta.call, containing
the arguments passed to ideal as unevaluated expressions.d+1 parameter item-response model to
the roll call data object, so in one dimension the model reduces
to the two-parameter item-response model popular in educational testing.
See References.
Identification: The model parameters are not
identified without the user supplying some restrictions on the
model parameters (translations, rotations and re-scalings of the
ideal points are observationally equivalent, via offsetting
transformations of the item parameters). It is the user's
responsibility to impose these restrictions; the following brief
discussion provides some guidance. For one-dimensional models, a simple route to identification is the
meanzero option, which guarantees local identification
(identification up to a 180 rotation of the recovered
dimension). Near-degenerateconstrain.legis option on
any two legislators' ideal points ensures global
identification.
Identification in higher dimensions can be obtained by supplying fixed
values for d+1 legislators' ideal points, provided the supplied
points span a d-dimensional space (e.g., three supplied ideal
points form a triangle in d=2 dimensions), via the
constrain.legis option. In this case the function defaults to
vague normal priors, but at each iteration the sampled ideal points
are transformed back into the space of identified parameters, applying
the linear transformation that maps the d+1 fixed ideal points
from their sampled values to their fixed values.
Alternatively, one can impose restrictions on the item parameters via
constrain.items.
Another route to identification is via post-processing. That
is, the user can run ideal without any identification
constraints, but then use the function postProcess to
map the MCMC output from the space of unidentified parameters into the
subspace of identified parameters.
Start values. Start values can be supplied by the user, or
generated by the function itself.
constrain.legis
or
constrain.items generate start values using the procedures discussed
below, but also impose any (identifying) constraints imposed by the user.
Start values for legislators'
ideal points are generated by double-centering the
roll call matrix (subtracting row means, and column means, adding in
the grand mean), forming a correlation matrix across legislators, and
extracting the first d eigenvectors, scaled by the square root
of the corresponding eigenvalues. Any constraints from
constrain.legis are then considered, with the
unconstrained start values (linearly) transformed via least squares
regression, minimizing the sum of the squared differences between the
constrained and the unconstrained start values.
To generate start values for the rollcall/item parameters, a series of
binomial glms are estimated
(with a probit link), one for each
rollcall/item, $j = 1, \ldots, m$. The votes on the $j$-th
rollcall/item are binary responses (presumed to be conditionally
independent given each legislator's latent preference), and the
(constrained or unconstrained) start values for legislators are used
as predictors. The estimated coefficients from these probit models are
stored to serve as start values for the item discrimination and
difficulty parameters. Any constraints on particular item
discrimination parameters from constrain.legis are then
imposed.
Clinton, Joshua, Simon Jackman and Douglas Rivers. 2004. The Statistical Analysis of Roll Call Data. American Political Science Review. 98:335-370.
Patz, Richard J. and Brian W. Junker. 1999. A Straightforward
Approach to Markov Chain Monte Carlo Methods for Item Response
Models. Journal of Education and Behavioral
Statistics. 24:146-178.
Rivers, Douglas. 2003.
rollcall, summary.ideal,
plot.ideal, predict.ideal.
tracex for graphical display of MCMC iterative
history. idealToMCMC converts the MCMC iterates in an
ideal object to a form that can be used by the coda library.
constrain.items and
constrain.legis for implementing identifying
restrictions.
postProcess for imposing identifying restrictions
ex post.
MCMCirt1d and
MCMCirtKd in the MCMCpack
package provide similar functionality to ideal.
data(s109)
## ridiculously short run for examples
id1 <- ideal(s109,
d=1,
meanzero=TRUE,
store.item=TRUE,
maxiter=500,
burnin=100,
thin=10,
verbose=TRUE)
summary(id1)
## more realistic long run
idLong <- ideal(s109,
d=1,
priors=list(xpv=1e-12,bpv=1e-12),
meanzero=TRUE,
store.item=TRUE,
maxiter=260e3,
burnin=1e4,
thin=100)Run the code above in your browser using DataLab