I'm sure I'm doing something completely boneheaded here, but I've
used this idiom
(constructing an interpolation spline and using prediction from a
backSpline to find
an approximation profile confidence interval) many times before and
haven't hit this
particular problem:

  r2 <- c(1.04409027570601, 1.09953936543359, 1.15498845516117,
1.21043754488875,
          1.26588663461633, 1.32133572434391, 1.37678481407149,
1.43223390379907,
          1.48768299352664, 1.54313208325422, 1.5985811729818,
1.65403026270938,
          1.70947935243696, 1.76492844216454, 1.82037753189212,
1.87582662161970,
          1.93127571134727, 1.98672480107485, 2.04217389080243,
2.09762298053001
          )
  d2 <- c(6.1610616585333, 5.70079375491741, 5.2366151167289,
4.77263065800071,
          4.31310259797181, 3.86232922249189, 3.42452047126494,
3.00367670365119,
          2.6034766331926, 2.22717964214416, 1.87754657382891,
1.55678176465949,
          1.26649764837839, 1.00770187223770, 0.780805622450771,
0.585650849661306,
          0.421553364080296, 0.287358347766713, 0.18150469048976,
0.102094654969619
          )
  plot(d2,r2,type="b")
  require(splines)
  sp <- interpSpline(r2,d2)
  psp <- predict(sp)
  points(psp$y,psp$x,col=5)
  bsp <- backSpline(sp)
  lines(predict(bsp,seq(0,6,length=101)),col=2)

   The prediction from the spline (cyan dots) looks perfectly reasonable.
The prediction from the inverted spline matches the curve over part of
the range but
goes crazy elsewhere.  I would have expected it to be reasonably close
to this well-behaved
curve over the whole range.

  I have looked at the docs for interpSpline, backSpline,
predict.bSpline, ... and nothing jumps out at me.

   Please be gentle, if possible, in explaining to me what I'm missing ...

  thanks,
    Ben Bolker

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to