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]

Reply via email to