Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 拟合威布尔函数和参数估计_R_Function_Curve Fitting_Weibull - Fatal编程技术网

R 拟合威布尔函数和参数估计

R 拟合威布尔函数和参数估计,r,function,curve-fitting,weibull,R,Function,Curve Fitting,Weibull,我试图将R中的函数与以下数据相匹配: y<-c(80.32000, 55.78819, 89.23141, 30.75780, 418.26000, 254.30000, 200,316.42667, 406.83435, 364.00304, 218.27867, 153.88019, 235.49971, 148.77052, 273.20171, 123.54065, 157.75650, 120.88961, 134.64092, 177.44000, 123.62948,

我试图将R中的函数与以下数据相匹配:

y<-c(80.32000,  55.78819,  89.23141,  30.75780, 418.26000, 254.30000,  200,316.42667, 406.83435, 364.00304, 218.27867, 153.88019, 235.49971, 148.77052,
273.20171, 123.54065, 157.75650, 120.88961, 134.64092, 177.44000, 123.62948,87.03000,  63.22455, 132.62000, 120.95000, 129.60000, 116.32000,  60.49000,  66.59000)

x<-c(0,  0,  0,  0,  1,  1,  1,  3,  3,  3,  3,  3,  3,  7,  7,  7,  7,  7,  7, 11, 11, 11, 11, 16, 16, 16, 16, 16, 16)
但我得到了以下错误:

numericDeriv(form[[3L]]、names(ind)、env中出错:评估模型时缺少值或产生无穷大。 在德韦布尔(x、形状、比例):南部产生


数据非常分散。此外,它们是$0范围内的几个点。由于参数值超出范围,可能会出现NAN:例如,优化器可能会尝试形状或比例的负值。给它们加上边界可能会有所帮助,或者编写一个更复杂的目标函数来处理超出范围的值(例如,通过将它们推回边界,或在边界中反映它们,等等)。在我的例子中,拟合导致形状接近1,因此,当某些x值为零时,您可能会产生0^0。非常感谢您的回答和对另一个函数的思考!我想,不太可能再达到x=0,因为它是一条类似于平台的直线,从左到右y=-30到0,然后在0处增加,对吗?无论如何,我认为这种方法对我来说已经足够好了!
nls(y~127*dweibull(x,shape,scale), start=c(shape=3,scale=100))