Psych 285: Computational Statistics
and Statistical Visualization

Professor Forrest Young

Term Project:
A ViSta Statistical Object Plug-In
for Frequency Analysis

  1. Software Development
  2. Write FREQ-MODEL-PROTO, a prototype ViSta model object plug-in to perform frequency analysis. The object should be able to analyze either the active categorical variables of a multivariate data matrix or the data in a frequency array. The object's constructor-function should use the standard ViSta system arguments, with additional keyword arguments specifying the analysis options, including at least CHI-SQUARE (T), PHI (T) and BINOMIAL (T). The constructor-function should return the object identification information of the instantiated object. The object should have the necessary slots, slot accessor methods and object-specific methods.

    The code should include all of the ViSta system methods. These are :OPTIONS, :ANALYSIS, :REPORT-MODEL, :VISUALIZE-MODEL, :INTERPRET-MODEL, :SAVE-MODEL-TEMPLATE, :CREATE-DATA and :MAKE-PLUG-IN.

    Note that the :MAKE-PLUG-IN and :INTERPRET-MODEL methods support new features not yet available in ViSta.

    Your local neighborhood ViSta guru will develop the system methods necessary to support these features, while our local neighborhood ViSta supplicants will develop the object-specific methods themselves.

    The load-on-demand feature discussed in Step 7 of the developer's guide is, I believe, no longer necessary due to the AUTOLOAD feature of LispStat. This means that you if you place your code in the AUTOLOAD directory, ViSta should automatically load it when it needs it.

    The spreadplot design will be discussed in class. It will probably include a mosaic plot, a stacked bar graph, a frequency plot, a dynamic frequency table, and a namelist.

  3. Software Evaluation
  4. : Construct test data objects by finding data used for this kind of analysis in textbooks or in statistical system guides. Test your code by creating instances of the object using these ViSta data objects. Compare your results to those shown in the published material.

  6. Write a short (10 page) guide for using the model object.

To get in touch: