[prev in list] [next in list] [prev in thread] [next in thread] 

List:       jakarta-commons-dev
Subject:    [jira] Commented: (MATH-296) LoessInterpolator.smooth() not working
From:       "Romeo Palijan (JIRA)" <jira () apache ! org>
Date:       2009-09-30 22:15:23
Message-ID: 452976745.1254348923492.JavaMail.jira () brutus
[Download RAW message or body]


    [ https://issues.apache.org/jira/browse/MATH-296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12761022#action_12761022 \
] 

Romeo Palijan commented on MATH-296:
------------------------------------

Sorry, maybe I was a little unclear in my explanation. 
Actually there is data, there are just no weights in the approximation window. Lets \
say we have 300 point and the first 100 are weighted 0, the others are weighted 1, \
they are still valid data points.  What happens currently is the first ones become \
NaN and their neighbours become NaN to the point that *all* points become NaN. This \
shouldn't happen. But do not misunderstand me, I am just assuming that the reason is \
because of the bandwidth as my dataset has this structure, I am not really sure about \
it.  I have done some debugging on the code but there are really a lot of loops so I \
could not pinpoint when and why exactly this is starting to happen as it is not right \
from the beginning.

> LoessInterpolator.smooth() not working correctly
> ------------------------------------------------
> 
> Key: MATH-296
> URL: https://issues.apache.org/jira/browse/MATH-296
> Project: Commons Math
> Issue Type: Bug
> Affects Versions: 2.0
> Environment: Java 1.6 on Vista
> Reporter: Romeo Palijan
> Fix For: 2.1
> 
> Attachments: math-296-test.patch, math-296.patch
> 
> 
> I have been comparing LoessInterpolator.smooth output with the loessFit output from \
> R (R-project.org, probably the most widely used loess implementation) and have had \
> strangely different numbers. I have created a small set to test the difference and \
> something seems to be wrong with the smooth method but I do no know what and I do \
>                 not understand the code.
> *Example 1*
> > x-input: |1.5| 3.0| 6| 8| 12|13| 22| 24|28|31|
> > y-input: |3.1|6.1|3.1|2.1|1.4|5.1|5.1|6.1|7.1|7.2|
> > Output LoessInterpolator.smooth():|NaN|NaN|NaN|NaN|NaN|NaN|NaN|NaN|NaN|NaN|
> > Output from loessFit() from R: \
> > |3.191178027520974|3.0407201231474037|2.7089538903778636|2.7450823274490297|4.3880 \
> > 11000549519|4.60078952381848|5.2988217587114805|5.867536388457898|6.7797794777879705|7.444888598397342|
> > 
> *Example 2 (same x-values, y-values just floored)*
> > x-input: |1.5| 3.0| 6| 8| 12|13| 22| 24|28|31|
> > y-input: |3|6|3|2|1|5|5|6|7|7|
> > Output LoessInterpolator.smooth(): \
> > |3|6|3|2|0.9999999999999005|5.0000000000001705|5|5.999999999999972|7|6.999999999999967|
> > 
> > Output from loessFit() from R: \
> > |3.091423927353068|2.9411521572524237|2.60967950675505|2.7421759322272248|4.382996 \
> > 912300442|4.646774316632562|5.225153658563424|5.768301917477015|6.637079139313073|7.270482144410326|
> > 
> As you see the output is practically the replicated y-input.
> At this point this funtionality is critical for us but I could not find any other \
> suitable java-implementation. Help. Maybe this strange behaviour gives someone a \
> clue?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic