[
https://issues.apache.org/jira/browse/MATH-1146?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Phil Steitz resolved MATH-1146.
-------------------------------
Resolution: Fixed
Javadoc fixes committed in 26e61145839e4da47eb83edfba406ceefc0b67bf
> class Mean returns incorrect result after processing an Infinity value
> ----------------------------------------------------------------------
>
> Key: MATH-1146
> URL: https://issues.apache.org/jira/browse/MATH-1146
> Project: Commons Math
> Issue Type: Bug
> Affects Versions: 3.3
> Reporter: david cogen
> Assignee: Phil Steitz
> Fix For: 3.4
>
> Attachments: MATH-1146.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.3.4#6332)