You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by "Mark R. Diggory" <md...@latte.harvard.edu> on 2004/05/28 20:04:29 UTC
[math] AbstractDescriptive Statistics
I'm curious about AbstractDescriptiveStatistics, currently our Type
Hierarchy looks like this:
Object
--> DescriptiveStatistics (implements Statistical Summary)
--> AbstractDescriptiveStatistics
--> DescriptiveStatisticsImpl
--> ListUnivariateImpl
--> BeanListUnivariateImpl
Why don't we consolidate AbstractDescriptiveStatistics into
DescriptiveStatistics? Then we will have
Object
--> DescriptiveStatistics (implements StatisticalSummary)
--> DescriptiveStatisticsImpl
--> ListUnivariateImpl
--> BeanListUnivaraiteImpl
Which is much more similar to the SummaryStatistics Hierarchy
Object
--> SummaryStatistics (implements StatisticalSummary)
--> SummaryStatisticsImpl
Likewise, for consistency, we should probibly rename ListUnivariateImpl
and BeanListUnivariateImpl to ListDescriptiveStatisticsImpl and
BeanDescriptiveStatisticsImpl
If no one has objections, I can make the changes.
-Mark
Re: [math] AbstractDescriptive Statistics
Posted by Phil Steitz <ph...@steitz.com>.
Mark R. Diggory wrote:
>
>
> Phil Steitz wrote:
>
>> Mark R. Diggory wrote:
>>
>>> I'm curious about AbstractDescriptiveStatistics, currently our Type
>>> Hierarchy looks like this:
>>>
>>> Object
>>> --> DescriptiveStatistics (implements Statistical Summary)
>>> --> AbstractDescriptiveStatistics
>>> --> DescriptiveStatisticsImpl
>>>
>>> --> ListUnivariateImpl
>>> --> BeanListUnivariateImpl
>>>
>>>
>>> Why don't we consolidate AbstractDescriptiveStatistics into
>>> DescriptiveStatistics? Then we will have
>>>
>>> Object
>>> --> DescriptiveStatistics (implements StatisticalSummary)
>>> --> DescriptiveStatisticsImpl
>>
>>
>>
>> I agree that this would be better. The only loss is that the
>> algorithm specification part (now in AbstractDescriptiveStatistics)
>> would be recombined with the storage management part (now in
>> DescriptiveStatisticsImpl). I see no real loss in this.
>>
>
> Now I actually understand the reason why we broke it up into two
> classes, The Abstract class maintains the Statistics parts so they can
> be reused in the ListUnivariateImpl etc. Your maintaining the
> SummaryStatistics as an abstract interface and all the Implementation is
> in SummaryStatisticsImpl.
>
> The modifications I'm suggesting place the methods for creating the
> UnivariateStatistics up in DescriptiveStatistics and only the storage in
> the Implementation. My edits basically combine DescriptiveStatistics and
> AbstractDescriptiveStatistics (not AbstractDescriptiveStatistics and
> DescriptiveStatisticsImpl).
>
Viewed this way, there is no reason for SummaryStatistics to be a factory
-- i.e., we can also collapse SummaryStatisticsImpl into
SummaryStatistics. I had previously been viewing the stats
implementations as pluggable in these classes; but I am OK with this
simplification.
Phil
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org
Re: [math] AbstractDescriptive Statistics
Posted by "Mark R. Diggory" <md...@latte.harvard.edu>.
Phil Steitz wrote:
> Mark R. Diggory wrote:
>
>> I'm curious about AbstractDescriptiveStatistics, currently our Type
>> Hierarchy looks like this:
>>
>> Object
>> --> DescriptiveStatistics (implements Statistical Summary)
>> --> AbstractDescriptiveStatistics
>> --> DescriptiveStatisticsImpl
>>
>> --> ListUnivariateImpl
>> --> BeanListUnivariateImpl
>>
>>
>> Why don't we consolidate AbstractDescriptiveStatistics into
>> DescriptiveStatistics? Then we will have
>>
>> Object
>> --> DescriptiveStatistics (implements StatisticalSummary)
>> --> DescriptiveStatisticsImpl
>
>
> I agree that this would be better. The only loss is that the algorithm
> specification part (now in AbstractDescriptiveStatistics) would be
> recombined with the storage management part (now in
> DescriptiveStatisticsImpl). I see no real loss in this.
>
Now I actually understand the reason why we broke it up into two
classes, The Abstract class maintains the Statistics parts so they can
be reused in the ListUnivariateImpl etc. Your maintaining the
SummaryStatistics as an abstract interface and all the Implementation is
in SummaryStatisticsImpl.
The modifications I'm suggesting place the methods for creating the
UnivariateStatistics up in DescriptiveStatistics and only the storage in
the Implementation. My edits basically combine DescriptiveStatistics and
AbstractDescriptiveStatistics (not AbstractDescriptiveStatistics and
DescriptiveStatisticsImpl).
> I agree with Stephen, however, that DescriptiveStatistics should be
> renamed DescriptiveStatisticsFactory.
>
Problem is that DescriptiveStatistics both the factory and the interface
for the objects the factory creates. As such its ambiguous as both.
Factory tends to just lengthen the name in this case.
>>
>> --> ListUnivariateImpl
>> --> BeanListUnivaraiteImpl
>>
>
>>
>> Likewise, for consistency, we should probibly rename
>> ListUnivariateImpl and BeanListUnivariateImpl to
>> ListDescriptiveStatisticsImpl and BeanDescriptiveStatisticsImpl
>
>
> I agree here as well, but I thought that we had agreed to push these
> into /experimental, so we could release 1.0 without the BeanUtils (and
> associated chain of) dependencies.
>
I remember something like that.
--
Mark Diggory
Software Developer
Harvard MIT Data Center
http://www.hmdc.harvard.edu
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org
Re: [math] AbstractDescriptive Statistics
Posted by Phil Steitz <ph...@steitz.com>.
Mark R. Diggory wrote:
> I'm curious about AbstractDescriptiveStatistics, currently our Type
> Hierarchy looks like this:
>
> Object
> --> DescriptiveStatistics (implements Statistical Summary)
> --> AbstractDescriptiveStatistics
> --> DescriptiveStatisticsImpl
>
> --> ListUnivariateImpl
> --> BeanListUnivariateImpl
>
>
> Why don't we consolidate AbstractDescriptiveStatistics into
> DescriptiveStatistics? Then we will have
>
> Object
> --> DescriptiveStatistics (implements StatisticalSummary)
> --> DescriptiveStatisticsImpl
I agree that this would be better. The only loss is that the algorithm
specification part (now in AbstractDescriptiveStatistics) would be
recombined with the storage management part (now in
DescriptiveStatisticsImpl). I see no real loss in this.
I agree with Stephen, however, that DescriptiveStatistics should be
renamed DescriptiveStatisticsFactory.
>
> --> ListUnivariateImpl
> --> BeanListUnivaraiteImpl
>
>
> Likewise, for consistency, we should probibly rename ListUnivariateImpl
> and BeanListUnivariateImpl to ListDescriptiveStatisticsImpl and
> BeanDescriptiveStatisticsImpl
I agree here as well, but I thought that we had agreed to push these into
/experimental, so we could release 1.0 without the BeanUtils (and
associated chain of) dependencies.
Phil
>
> If no one has objections, I can make the changes.
>
> -Mark
>
>
> ------------------------------------------------------------------------
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: commons-dev-help@jakarta.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org
Re: [math] AbstractDescriptive Statistics
Posted by Al Chou <ho...@yahoo.com>.
--- "Mark R. Diggory" <md...@latte.harvard.edu> wrote:
> I'm curious about AbstractDescriptiveStatistics, currently our Type
> Hierarchy looks like this:
>
> Object
> --> DescriptiveStatistics (implements Statistical Summary)
> --> AbstractDescriptiveStatistics
> --> DescriptiveStatisticsImpl
>
> --> ListUnivariateImpl
> --> BeanListUnivariateImpl
>
>
> Why don't we consolidate AbstractDescriptiveStatistics into
> DescriptiveStatistics? Then we will have
On the basis of the above diagram (I haven't looked at the code), it does seem
strange that AbstractDescriptiveStatistics is a descendant of
DescriptiveStatistics (unless the latter is an interface?).
> Object
> --> DescriptiveStatistics (implements StatisticalSummary)
> --> DescriptiveStatisticsImpl
>
> --> ListUnivariateImpl
> --> BeanListUnivaraiteImpl
>
> Which is much more similar to the SummaryStatistics Hierarchy
>
> Object
> --> SummaryStatistics (implements StatisticalSummary)
> --> SummaryStatisticsImpl
>
> Likewise, for consistency, we should probibly rename ListUnivariateImpl
> and BeanListUnivariateImpl to ListDescriptiveStatisticsImpl and
> BeanDescriptiveStatisticsImpl
>
> If no one has objections, I can make the changes.
+0, depending on whether multivariates are in our near future (on which I
currently have no opinion).
Al
=====
Albert Davidson Chou
Get answers to Mac questions at http://www.Mac-Mgrs.org/ .
__________________________________
Do you Yahoo!?
Friends. Fun. Try the all-new Yahoo! Messenger.
http://messenger.yahoo.com/
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org