[Rasch] Update: Damon Workshop, Vancouver

Mark Moulton markhmoulton at gmail.com
Fri Apr 6 09:17:52 EST 2012

*Rasch Colleagues,*

I was just asked to provide a little more information about the Damon
Workshop next Friday in Vancouver.  Below is some description, plus an
agenda.  Make sure to email me if you plan to attend.  Hope to see you at

Mark Moulton
markhmoulton at gmail.com


Damon is software I wrote for analyzing highly multidimensional datasets
(think movie ratings) while employing Rasch-like standards of
reproducibility and "specific objectivity".  It can handle data in a
variety of metrics, from continuous to dichotomous, and is good for making
predictions and generating measures on constructs that you specify.  I
wrote Damon on top of the Python programming language to make it as
flexible as possible.  It is run using simple commands in a script file, or
interactively as you wish.  There is a small learning curve to get used to
Python, but in general Damon does not require programming expertise.
 Damon, Python, and Numpy (Python's numerical package) are all free, as is
the workshop.

The software can be downloaded from my website
you can wait to do the installs at the workshop.

*Where:*  Show up at the "Staff Entrance" of the Library Square Conference
Center, on 360 W. Georgia St., at 8:30 am, Friday 4/13.  Security will let
you in.

*Workshop Agenda Friday (8:30 - 12:00):*

   - Install Python, Numpy, Damon -- by stick or download
   - Some Python basics (imports, lists, functions, objects, arrays)
   - How to load/format text files and create artificial datasets
   - How to calculate Damon coordinates, estimates, standard errors
   - How to find "best dimensionality"
   - How to interpret summary statistics, edit data
   - What does it all mean? -- the math, the algorithm, applications

*What it Looks Like:*  Here is a sample Damon script to analyze multiple
choice data.  It doesn't get much more complicated than this.

import damon1.core as dmn

data =
   # Load file

MyAnswerKey = {'Item1':['b'],'Item2':['a'],...}    # Define answer key

data.parse(ExtractKey=['Cols',MyAnswerKey])   # Parse response categories
into separate bins.  Identify "correct" response columns.

data.standardize()     # Get all items into a logit metric

data.coord([range(1,20)])    # Find optimal number of dimensions (between 1
and 20), then compute person/item parameters (person and item spatial

data.baseEst()     # Compute cell estimates in the standardized metric

data.finEst()    # Convert all cell estimates back to the original metric

data.summStat()    # Compute summary statistics

data.export(['finEst_out','ColEnts_out'])    # Export selected outputs as
text files
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://mailinglist.acer.edu.au/pipermail/rasch/attachments/20120405/a71682a8/attachment.html 

More information about the Rasch mailing list