[Rasch] Rasch-inspired open-source software now available for highly multidimensional data
markhmoulton at gmail.com
Sat Mar 24 14:06:14 EST 2012
*Dear Rasch Colleagues,*
I want to let you know about *Damon*, a Python-based software package that
I'm releasing free to the Rasch psychometric community and general public.
The result of some 20 years hard labor (initiated by Ben Wright to his
surprise), it has been in private commercial use for the last five years.
It was designed specifically to apply Rasch's objectivity criterion to *highly
multidimensional* datasets, such as the infamous Netflix movie ratings
It is documented and available for download through
www.pythiasconsulting.com . If there is any interest, I will hold a *Damon
workshop in Vancouver* at my hotel on the morning of *Friday, April 13,*after
Contact me if you have any questions.
Mark H. Moulton, Ph.D.
markhmoulton at gmail.com
*Features/Bugs (depending on point of view):*
- *Multidimensionality.* Easily handles data with 1, 5, 10, 50, 100+
dimensions, including items that are negatively correlated.
- *Data types.* Handles interval, ordinal, ratio, dichotomous,
polytomous, and nominal data, including within the same dataset.
- *Missing Data. * Handles pretty much any proportion of missing data,
random or non-random.
- *Labels.* Datasets support row labels and column labels of any depth.
Queries are label-based.
- *Objectivity.* Damon offers clear criteria for determining and
optimizing the objectivity of all reported statistics, including "best
dimensionality". These include Rasch's parameter invariance requirement.
- *Measures.* Person measures consist of cell estimates, in either the
original or a linear (logit) metric, averaged across one or more items
within a dataset. They answer the question: *How able is Person A on
the construct embodied by a defined subset of items?*
- *Predictions.* Predictions are of the form: *How would Person A have
performed on Item 1 if he had taken the item?*
- *Equating.* Parameters from one dataset are transferrable as anchors
to a comparable dataset.
- *Analysis of Fit.* Damon reports fit statistics, standard errors,
etc., for determining the degree to which the observed data fits into the
- *Rasch.* Damon includes a Rasch module based on the Winsteps JMLE
- *ALS/Rasch.* The algorithm is classified as a multidimensional
alternating least squares matrix decomposition subjected to a strict
Rasch-based objectivity optimization criterion.
- *Python.* Damon is built on top of the Python scripting language and
the Numpy numerical package (both free). It is accessed through a
command-line shell or run from scripts. If you have experience with the
statistical language *R*, or *MatLab*, you will feel at home. Although
Damon is written in Python, it requires very little expertise in Python
programming. The website includes a tutorial. Damon's inline help
resources are extensive.
*A Sample Damon script*
>>> import damon1.core as dmn
>>> Data =
This short program imports and formats a text file, standardizes the data,
looks for the optimal (most objective) dimensionality in a range of 10
dimensions, computes coordinates (multidimensional abilities and
difficulties) for each person and item, computes an array of cell estimates
(for both missing and non-missing cells), computes another array of cell
(0,1) predictions, computes person measures, and exports three of the
outputs as text files.
Various other statistics, functions, and methods are available in Damon,
plus the massive libraries in Numpy and related Python packages.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Rasch