R-beta: spline problems(?)
"A. Tsiolakidis" <tsioltas at cs.keele.ac.uk> writes:
I am a total beginner with this whole thing so please have patience!
I am trying to run an S-plus program with a certain line:
spline(1:nrow(y), y[,1],n=100);
This crashes with:
Error: NAs in foreign function call (arg 8)
Apparently, this is caused by the last command of spline:
u <- seq(xmin, xmax, length.out = n)
.C("spline_eval", z$method, length(u), x = u, y = double(n),
z$n, z$x, z$y, z$b, z$c, z$d)[c("x", "y")]
}
Now, I can cause that error with: spline(1:10,1:10)
So, there is a whole class of problems for which spline refuses to
compute anything - is this the correct behaviour? E.g.,
spline(1:10,(1:10)/2.5) #it is alright, but ...
spline(1:10,(1:10)/2) # this has the "NAs.." problem
Finally, I am almost sure that the y matrix in my program has quite
normal values, i.e. values that should allow for meaningful
interpolation.
Anybody knows what this all is about?
If you have the splines library installed, could you try the same
problem using interpSpline instead of spline? The sequence for the
1:10, 1:10 example looks like
R> library(splines)
R> ttt <- interpSpline(y ~ x, data.frame(x = 1:10, y = 1:10) )
R> ttt
polynomial representation of spline for y ~ x
constant linear quadratic cubic
1 1 1 0.0000e+00 -3.3307e-16
2 2 1 -9.9920e-16 9.9920e-16
3 3 1 1.9984e-15 -1.4063e-15
4 4 1 -2.2204e-15 7.4015e-16
5 5 1 0.0000e+00 8.8818e-16
6 6 1 2.6645e-15 -1.7764e-15
7 7 1 -2.6645e-15 8.8818e-16
8 8 1 0.0000e+00 8.8818e-16
9 9 1 2.6645e-15 -8.8818e-16
10 10 1 0.0000e+00 -8.8818e-16
R> plot( ttt ) # produces a nice straight line plot.
R> predict( ttt )
$x
[1] 1.00 1.18 1.36 1.54 1.72 1.90 2.08 2.26 2.44 2.62
[11] 2.80 2.98 3.16 3.34 3.52 3.70 3.88 4.06 4.24 4.42
[21] 4.60 4.78 4.96 5.14 5.32 5.50 5.68 5.86 6.04 6.22
[31] 6.40 6.58 6.76 6.94 7.12 7.30 7.48 7.66 7.84 8.02
[41] 8.20 8.38 8.56 8.74 8.92 9.10 9.28 9.46 9.64 9.82
[51] 10.00
$y
[1] 1.00 1.18 1.36 1.54 1.72 1.90 2.08 2.26 2.44 2.62
[11] 2.80 2.98 3.16 3.34 3.52 3.70 3.88 4.06 4.24 4.42
[21] 4.60 4.78 4.96 5.14 5.32 5.50 5.68 5.86 6.04 6.22
[31] 6.40 6.58 6.76 6.94 7.12 7.30 7.48 7.66 7.84 8.02
[41] 8.20 8.38 8.56 8.74 8.92 9.10 9.28 9.46 9.64 9.82
[51] 10.00
attr(,"class")
[1] "xyVector"
R> predict( ttt, len = 100 )
Error in predict.npolySpline(ttt, len = 100) : unused argument to function
R> predict( ttt, nseg = 100 )
$x
[1] 1.00 1.09 1.18 1.27 1.36 1.45 1.54 1.63 1.72 1.81
[11] 1.90 1.99 2.08 2.17 2.26 2.35 2.44 2.53 2.62 2.71
[21] 2.80 2.89 2.98 3.07 3.16 3.25 3.34 3.43 3.52 3.61
[31] 3.70 3.79 3.88 3.97 4.06 4.15 4.24 4.33 4.42 4.51
[41] 4.60 4.69 4.78 4.87 4.96 5.05 5.14 5.23 5.32 5.41
[51] 5.50 5.59 5.68 5.77 5.86 5.95 6.04 6.13 6.22 6.31
[61] 6.40 6.49 6.58 6.67 6.76 6.85 6.94 7.03 7.12 7.21
[71] 7.30 7.39 7.48 7.57 7.66 7.75 7.84 7.93 8.02 8.11
[81] 8.20 8.29 8.38 8.47 8.56 8.65 8.74 8.83 8.92 9.01
[91] 9.10 9.19 9.28 9.37 9.46 9.55 9.64 9.73 9.82 9.91
[101] 10.00
$y
[1] 1.00 1.09 1.18 1.27 1.36 1.45 1.54 1.63 1.72 1.81
[11] 1.90 1.99 2.08 2.17 2.26 2.35 2.44 2.53 2.62 2.71
[21] 2.80 2.89 2.98 3.07 3.16 3.25 3.34 3.43 3.52 3.61
[31] 3.70 3.79 3.88 3.97 4.06 4.15 4.24 4.33 4.42 4.51
[41] 4.60 4.69 4.78 4.87 4.96 5.05 5.14 5.23 5.32 5.41
[51] 5.50 5.59 5.68 5.77 5.86 5.95 6.04 6.13 6.22 6.31
[61] 6.40 6.49 6.58 6.67 6.76 6.85 6.94 7.03 7.12 7.21
[71] 7.30 7.39 7.48 7.57 7.66 7.75 7.84 7.93 8.02 8.11
[81] 8.20 8.29 8.38 8.47 8.56 8.65 8.74 8.83 8.92 9.01
[91] 9.10 9.19 9.28 9.37 9.46 9.55 9.64 9.73 9.82 9.91
[101] 10.00
attr(,"class")
[1] "xyVector"
The splines library is available in the src/contrib section of any of
the CRAN archives. The master CRAN site is
http://www.ci.tuwien.ac.at/R/contents.html
Douglas Bates bates at stat.wisc.edu Statistics Department 608/262-2598 University of Wisconsin - Madison http://www.stat.wisc.edu/~bates/ -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._