[R] nls() fit to Kahnemann/ Tversky function

From: Mark Hempelmann <neo27_at_t-online.de>
Date: Tue 01 Nov 2005 - 09:14:07 EST


Dear WizaRds,

     I would like to fit a curve to ten points with nls() for one unknown parameter gamma in the Kahnemann/ Tversky function, but somehow it won't work and I am unable to locate my mistake.

p.kum <- seq(0.1,1, by=0.1)
felt.prob.kum <- c(0.16, 0.23, 0.36, 0.49, 0.61, 0.71, 0.85, 0.89, 0.95, 1) ## how to find a function that fits these points nicely? plot(p.kum, felt.prob.kum) ## looks a little like an "S"

gamma <- rep(0.5, 10)
nls.dataframe <- data.frame(p.kum,felt.prob.kum, gamma)

nls.kurve <- nls( formula = felt.prob.kum ~ p.kum^gamma/(p.kum^gamma+(1-p.kum)^gamma)^(1/gamma), data=nls.dataframe, start=c(gamma=gamma), algorithm="plinear" )

summary(nls.kurve)

gives: Error in La.chol2inv(x, size) : 'size' cannot exceed nrow(x) = 10

     If I go with the Gauss-Newton algorithm I get an singular gradient matrix error, so I tried the Golub-Pereyra algorithm for partially linear least-squares.

     It also seems the nls model tries to find ten different gammas, but I want only one single gamma parameter for the function. I appreciate your help and support. Thank you.

sol lucet omnibus
Mark Hempelmann



R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Tue Nov 01 09:21:13 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:40:54 EST