commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gilles Sadowski <gil...@harfang.homelinux.org>
Subject Re: [math] Pearson Correaltion NaNs
Date Tue, 06 Nov 2012 14:46:39 GMT
On Tue, Nov 06, 2012 at 03:06:07PM +0100, Martin Rosellen wrote:
> Hi,
> 
> I analyse blood tests and not every blood sample is analysed for the
> same values. It would be best if rows (tuples) that contain a NaN
> are ignored.
> 

It would be dangerous if Commons Math would simply discard NaN values as
they could have occurred because of a bug (that would go unnoticed).

The best thing would be to filter your data before attempting to analyze
them. The "to-be-ignored" property is indeed application-dependent, and so
is your choice of NaN to represent data that require special handling.


Best regards,
Gilles

> 
> >Hello.
> >
> >>I am having difficulties using the Pearson Correlation because it
> >>seems that it does not work if some cell is NaN. Is that intended?
> >Very likely. [When NaN appears in a computation, it propagates and the
> >result is NaN.]
> >
> >>Here is some code:
> >>
> >>public static void main(String[] args) {
> >>         double [] row1 = new double[]{3,4};
> >>         double [] row2 = new double[]{1,8};
> >>         double [] row3 = new double[]{Double.NaN,4};
> >>         double[][] data = new double[][]{row1,row2,row3};
> >>         System.out.println(Arrays.deepToString(data));
> >>
> >>         PearsonsCorrelation coefMatrixP = new PearsonsCorrelation(data);
> >>
> >>System.out.println(coefMatrixP.getCorrelationMatrix().toString());
> >>     }
> >>
> >What would you suggest should happen?
> >
> >
> >Regards,
> >Gilles
> >

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org


Mime
View raw message