CLEAVE ("C Language Exploratory Analysis of Variance with Enhancements") is an open source data analysis utility composed in ANSI "C", and it can be run on many kinds of hardware. It is a UNIX-style, command-line program which computes standard Analysis of Variance F-tests for large data sets and does so rather quickly. But it also computes more than just "F" and "p".
Briefly, CLEAVE (Janunary 30, 2005 version) adds the following to the standard, fixed-factor ANOVA output:
1) Factor Correlation and Unequal Variance Corrections: i.e. CLEAVE produces Geisser-Greenhouse, Huyhn-Feldt, and Lower Bound epsilons and their corresponding corrected p values for repeated measures and other designs.
- these allow the user to relax or eliminate the equal-variances and/or covariance-sphericty assumptions from an ANOVA computation (this can be especially important with large of multi-way analyses of variance).2) Treatment Magnitudes: partial omega squared, partial eta squared, and R squared are computed.
- Box epsilon factors can be computed for randomized ANOVA designs, as well as for repeated measures ANOVA designs, in order to correct p values for factor version variance heterogeneity.
- approximate epsilons can be computed for high-order interactions with increased speed.
- these allow the user to see the relative and absolute magnitude of effect that each experimental factor has on the outcome, which are not so easy to glean just from the F or p values alone.3) A convenient Ranking of Factors based upon treatment magnitudes and significance levels achieved.
- at a glance one can tell which factor combinations are the most important effects without having to sift through the whole output.4) Post-Hoc Significance Tests: Scheffe Post-Hoc test parameters and pairwise comparison tests of factor level significance with many options.
- the Scheffe values allow you to re-run CLEAVE to test for more specific factor contrast effects.5) Post-Hoc Power Table: This table can be used during trial runs to gauge how many subjects will be needed in order to (be likely to) achieve significant results in a future experimental replication.
- the pairwise tests can check for significance for all pairs of levels and/or pairs of levels to one control. They are conservative tests but we also include sequential tests to help increase their power.
- tests can take into account unequal variances of factor levels and unequal sample sizes for unbalanced designs.
- tests can use Bonferroni or Sidak familywise errors and also use reduced degrees of freedom when comparing ANOVA interaction levels
6) Random Factors - this allows the user to generalize the conclusions of the ANOVA to factor levels not studied by assuming that specified factor levels in the experiment are representative of those in the general population.
7) A Configuration File to make the program more tunable
- you can change many internal variables and control output8) A Histogram and Cell Line Diagrams: which help the user to detect outlying data points and/or violations of the ANOVA model's linearity and gaussian noise shape assumptions.
- it can also be used to create a record that identifies the settings used to process one's data.
9) Associated MATLAB (5.3+) functions: which allow the user to read CLEAVE-style data sets into MATLAB (5.3+up), do data manipulations and graphing, and write the altered data back out in a CLEAVE-ready format.
The cleave.zip file that you can download below contains the following files (January 30, 2005 version):
- cleave.readme: lists all files and gets you started
- cleave.txt: documentation on how to use the program.
- cleave.tst: indicates what kind of testing was done on CLEAVE.
- cleave.hst: origin and history of CLEAVE.
- cleave.tpl: a configuration backup file
- cleave.lic: the CLEAVE license.
- randbox.txt: demonstrates the usefulness of Box epsilons in correcting for heterogeneity of variances within randomized factors.
Source and Executables:
- cleave.exe: a Windows/Pentium version of the CLEAVE program.
- cleave: a RED HAT 7/Pentium version of the CLEAVE program.
- cleavemac: a MAC OS X executable.
- cleaveds.exe: a small DOS/x86 version of the CLEAVE program.
- cleave.cnf: the CLEAVE configuration file
- cleave.c: the main source code, in ANSI C
- cleave.h: the source code's header file
Sample Data Files
- "repeats": a 2 way design to demonstrate generating a new factor
- "bogartz6": a 3-way mixed-repeated measures design
- "proportional": a 3-way proportional design
- "bogartz6.out": CLEAVE output when run on bogartz6
Associated MATLAB files
- cleaveread.m: reads in CLEAVE-style text format data files
- cleavewrite.m: writes out CLEAVE-style text data files
- cleavestats.m: computes basic statistics for CLEAVE-style data
- cleaveplot.m: plots CLEAVE-style data
- anovaF.m: ANOVA computations for small CLEAVE-style data sets
1) You can do whatever you like with the documentation, source, etc., but if you redistribute them:
> include enough files so that the next person can understand, use and modify CLEAVE,2) If anything goes wrong when using CLEAVE, you are not entitled to any redress from the authors, their employers, or funders. In other words, CLEAVE is distributed "as-is" and with no warranty.
> document all of the source and documentation changes you make,
> do not misrepresent the history of creation and modification of CLEAVE.
For more details on each of these points, see the (very short!) open-source license and disclaimer file "cleave.lic" after you download it. Given the above information, you can now choose whether to download our software or not.
The program has been downloaded times.
HCN Laboratory, UC Davis & VANCHCS, Martinez, CA, USA