Re: [R] deriv when one term is indexed

2006-11-19 Thread Spencer Graves
You ask whether there would be a way to adapt the deriv and deriv3 functions to deal with formulas that have an indexed term, effectively allowing differentiation with respect to a vector. As Simon Blomberg famously said, This is R. There is no if. Only how.(*) The implementation,

Re: [R] deriv when one term is indexed

2006-11-19 Thread Ken Knoblauch
I have found a way to approach the question that I posed, that is having deriv and deriv3 deal with an indexed term in the formula. Unless, there is a more direct approach (and my minimal investigation of the code involved suggested that it would not be simple to implement, for me at least), this

Re: [R] deriv when one term is indexed

2006-11-19 Thread Ken Knoblauch
A slight glitch got-in during the copy and past. The part below that says, ms.curv(dd.nls.d4) Parameter effects: c^theta x sqrt(F) = 0.0123 Intrinsic: c^iota x sqrt(F) = 0.0068 should read, rms.curv(dd.nls.d4) Parameter effects: c^theta x sqrt(F) = 0.0123 Intrinsic: c^iota x

Re: [R] deriv when one term is indexed

2006-11-18 Thread Gabor Grothendieck
This works for me in terms of giving results without error messages except for the confint(dd.plin) which I assume you don't really need anyways. gg - model.matrix(~ Gun/GL - Gun, dd) dd.plin - nls(Lum ~ gg^gamm, dd, start = list(gamm = 2.4), +alg = plinear +

Re: [R] deriv when one term is indexed

2006-11-18 Thread Gabor Grothendieck
I mixed up examples. Here it is again. As with the last one confint(dd.plin) gives an error (which I assume is a problem with confint that needs to be fixed) but other than that it works without issuing errors and I assume you don't need the confint(dd.plin) in any case since dd.plin is just

[R] deriv when one term is indexed

2006-11-18 Thread Ken Knoblauch
I don't know why I get a different result than you do, though I'll play around with it some and check the code to see if I can figure out what is going on, on my end. I will add that by transforming GL so that it spans the interval [0, 1] instead of [0, 255], the correlations among the parameters

[R] deriv when one term is indexed

2006-11-17 Thread Ken Knoblauch
Hi, I'm fitting a standard nonlinear model to the luminances measured from the red, green and blue guns of a TV display, using nls. The call is: dd.nls - nls(Lum ~ Blev + beta[Gun] * GL^gamm, data = dd, start = st) where st was initally estimated using optim() st $Blev

Re: [R] deriv when one term is indexed

2006-11-17 Thread Gabor Grothendieck
Please provide reproducible code which shows the error. dd - structure(list(Lum = c(0.15, 0.07, 0.1, 0.19, 0.4, 0.73, 1.2, + 1.85, 2.91, 3.74, 5.08, 6.43, 8.06, 9.84, 12, 14.2, 16.6, 0.1, + 0.1, 0.17, 0.46, 1.08, 2.22, 3.74, 5.79, 8.36, 11.6, 15.4, 19.9, + 24.6, 30.4, 36.1, 43, 49.9, 0.06, 0.06,

Re: [R] deriv when one term is indexed

2006-11-17 Thread Ken Knoblauch
Thank you for your rapid response. This is reproducible on my system. Here it is again, with, I hope, sufficient detail to properly document what does not work and what does on my system, But my original question, properly motivated or not, concerns whether there is a way to use or adapt

[R] deriv when one term is indexed

2006-11-17 Thread Ken Knoblauch
Sorry, a slight glitch got in because I subsetted the original data frame. The last part, that works should read: dd.nls.d2 - nls(Lum ~ dd.deriv2(Blev, beta, gamm, GL), data = dd, start = list(Blev = B[2], beta = B[3:5], gamm = B[1])) #But not here confint(dd.nls.d2)