On Nov 14, 2007 1:41 PM, Bob MacCallum <[EMAIL PROTECTED]> wrote: > > Hello, > > The org.apache.commons.math.stat.* packages are exactly what we need for our > microarray analysis web application except for the lack of an ANOVA class (the > FDistribution is already there however). I have coded this up and it seems to > produce the same output as R's anova(lm(data)) - as described in more detail > in the test suite. > > I have added the following to my anonymous SVN checkout: > > src/test/org/apache/commons/math/stat/inference/AnovaTest.java > src/java/org/apache/commons/math/stat/inference/Anova.java > src/java/org/apache/commons/math/stat/inference/AnovaImpl.java > > Should I add this to a bugzilla ticket for you guys to look at?
Thats the best way - although we use Jira rather than bugzilla: http://commons.apache.org/math/issue-tracking.html > How do I get > a suitable patch file? If I do svn diff, these new files are not in > subversion... Or should I just tar up these files? You could do an svn add to your local copy and then create a patch file but IMO for new files best to just attach them directly to the Jira ticket (theres a "multiple files" option that allows you to do three at a time). Niall > I guess one issue is naming... Should it be called UnivariateAnova, for > example? > > Here are the methods from interface definition as a taster. > As you can see, I need to flesh out the documentation some more. > > /** > * Computes the ANOVA F-value for a set of data in two or more classes. > * > * @param classdata Hashtable - key = classname, values = double[] > * @return Fvalue > * @throws IllegalArgumentException if the precondition is not met > * @throws MathException if the statistic can not be computed do to a > * convergence or other numerical error. > */ > public abstract double anovaFValue(Hashtable classdata) > throws IllegalArgumentException, MathException; > > /** > * Computes the ANOVA P-value for a set of data in two or more classes. > * > * @param classdata Hashtable - key = classname, values = double[] > * @return Pvalue > * @throws IllegalArgumentException if the precondition is not met > * @throws MathException if the statistic can not be computed do to a > * convergence or other numerical error. > */ > public abstract double anovaPValue(Hashtable classdata) > throws IllegalArgumentException, MathException; > > > I have followed TTest as a style guide. > > cheers, > Bob. > > > -- > Bob MacCallum | VectorBase Developer | Kafatos/Christophides Groups | > Division of Cell and Molecular Biology | Imperial College London | > Phone +442075941945 | Email [EMAIL PROTECTED] > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]