我想估计非线性模型的参数。显然我的初始值有问题。
我的数据集具有以下结构,其中列为:
color Lum ruido Dist RT Resp RT.ms Condicion
有7920行。
有四种不同的颜色= [0,90,180,270];三个亮度= [13,19,25];和两种类型的噪声= [1,2] - > 4x3x2 = 24个条件。
这些是值Dist:
if( ColorCase == 0 || ColorCase == 180)
DistTemp = [0.003; 0.004; 0.005; 0.006; 0.007; 0.008; 0.01; 0.015; 0.02; 0.03; 0.05];
elseif(ColorCase == 90 || ColorCase == 270)
DistTemp = [0.007; 0.008; 0.009; 0.01; 0.015; 0.02; 0.03; 0.04; 0.05; 0.06; 0.07];
end
我为每种可能的组合采取了30项措施。
当我只合并两个变量时,它可以工作:
RT0_K.nls <- nls(RT.ms ~ RT0[Condicion] + K[Condicion]/(Dist^n),
data = ICM,
start = list(RT0 = rep(300,24),K = rep(1,24),n=1))
但是当我合并3个变量时,会抛出错误:
> RT0_K.nls <- nls(RT.ms ~ RT0[Condicion] + K[Condicion]/(Dist^n[Condicion]),
data = ICM, start = list(RT0 = rep(300,24),K = rep(1,24),n=rep(1,24)))
Error in nls(RT.ms ~ RT0[Condicion] + K[Condicion]/(Dist^n[Condicion]), :
singular gradient
你能帮我找一个解决方案吗?
非常感谢。