[ https://issues.apache.org/jira/browse/MATH1146?page=com.atlassian.jira.plugin.system.issuetabpanels:commenttabpanel&focusedCommentId=14099446#comment14099446
]
Phil Steitz commented on MATH1146:

I am leaning toward improving the javadoc to be clear about what happens with infinities (if
possible to do consistently). The updating formulas and setup are designed for fast, accurate
computations and I want to make sure we do not add a performance hit for users with standard
(non NaN, nonInf) data so we can return meaningful results in the presence of INFs.
> class Mean returns incorrect result after processing an Infinity value
> 
>
> Key: MATH1146
> URL: https://issues.apache.org/jira/browse/MATH1146
> Project: Commons Math
> Issue Type: Bug
> Affects Versions: 3.3
> Reporter: david cogen
> Attachments: MATH1146.patch
>
>
> 1. Create a Mean object.
> 2. call increment() with Double.POSITIVE_INFINITY.
> 3. Call getResult(). Result is INFINITY as expected.
> 4. call increment() with 0.
> 5. Call getResult(). Result is NaN; not INFINITY as expected.
> This is apparently due to the "optimization" for calculating mean described in the javadoc.
Rather than accumulating a sum, it maintains a running mean value using the formula "m = m
+ (new value  m) / (number of observations)", which unlike the "definition way", fails after
an infinity.
> I was using Mean within a SummaryStatistics. Other statistics also seem to be affected;
for example, the standard deviation also incorrectly gives NaN rather than Infinity. I don't
know if that's due to the error in Mean or if the other stats classes have similar bugs.

This message was sent by Atlassian JIRA
(v6.2#6252)
