Many thanks Brian for tracking this down. Was it fixed by
c next line is not in current dloess
goto 7
in ehg136? If this needs to be in the netlib version as well, we should
inform Eric Grosse.
While we're at it, there are a few more inconsistencies (not nearly as
serious as PR#13570 so I hesitate to call them bugs) regarding the
definition of leaf cell membership (certain .lt. should be .le. ) in
ehg128, ehg137, and ehg138 (not currently used); it seems I neglected to
mention these to Eric. If you are interested in these I can submit a
patch and will notify Eric as well.
Finally, perhaps now is as good a time as any to point out that in the
documentation, the bit about cross-terms in
\item{drop.square}{for fits with more than one predictor and
\code{degree=2}, should the quadratic term (and cross-terms) be
dropped for particular predictors?
is incorrect -- cross terms are not dropped in this implementation of
loess.
Thanks again,
Ben
Prof Brian Ripley wrote:
I've found the discrepancy, so the patched code from current dloess is
now available in R-patched and R-devel.
On Fri, 6 Mar 2009, Prof Brian Ripley wrote:
On Thu, 5 Mar 2009, Benjamin Tyner wrote:
Hi
Nice to hear from you Ryan. I also do not have the capability to
debug on windows; however, there is a chance that the behavior you
are seeing is caused by the following bug noted in my thesis
(available on ProQuest; email me if you don't have access):
"When lambda = 0 there are no local slopes to aid the blending
algorithm, yet the
interpolator would still assume they were available, and thus use
arbitrary values
from memory. This had implications for both fit and tr[L]
computation. In the
updated code these are set equal to zero which seems the best
automatic rule when
lambda = 0." [lambda refers to degree]
I submitted a bug fix to Eric Grosse, the maintainer of the netlib
routines; the fixed lines of fortran are identified in the comments
at (just search for my email address):
http://www.netlib.org/a/loess
These fixes would be relatively simple to incorporate into R's
version of loessf.f
The fixes from dloess even more simply, since R's code is based on
dloess. Thank you for the suggestion.
Given how tricky this is to reproduce, I went back to my example
under valgrind. If I use the latest dloess code, it crashes, but by
selectively importing some of the differences I can get it to work.
So it looks as if we are on the road to a solution, but something in
the current version (not necessarily in these changes) is
incompatible with the current R code and I need to dig further (not
for a few days).
Alternatively, a quick check would be for someone to compile the
source package at
https://centauri.stat.purdue.edu:98/loess/loess_0.4-1.tar.gz and
test it on windows. Though this package incorporates this and a few
other fixes, please be aware that it the routines are converted to C
and thus there is a slight performance hit compared to the fortran.
Hope this helps,
Ben
[...]
--
Brian D. Ripley, rip...@stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel