我試圖將直方圖數據擬合,似乎遵循泊松分佈。我聲明函數如下,並嘗試使用最小二乘法來擬合它。估算泊松PDF參數用曲線在MATLAB
xdata; ydata; % Arrays in which I have stored the data.
%Ydata tell us how many times the xdata is repeated in the set.
fun= @(x,xdata) (exp(-x(1))*(x(1).^(xdata)))./(factorial(xdata)) %Function I
% want to use in the fit. It is a poisson distribution.
x0=[60]; %Approximated value of the parameter lambda to help the fit
p=lsqcurvefit(fun,x0,xdata,ydata); % Fit in the least square sense
然而,我遇到了一個問題
Error using snls (line 48)
Objective function is returning undefined values at initial point.
lsqcurvefit cannot continue.
我已經在網上看到,它有時不得不通過零例如有一個部門的事。這可以通過在分母中加入少量來解決,以便不確定這種不確定性。但是,那不是我的情況。那麼問題是什麼?
我不知道這是不是這樣做的正確方法。感謝您的評論!無論如何,lsqcurvefit應該能夠給我一個參數的結果。我嘗試了一個已知的poisson pdf,它給了我一個結果。那麼問題是什麼? –
我沒有理解你的評論。你爲什麼不使用我的建議? – Royi
我現在看到MLE方法更好。但是,我仍然想知道爲什麼最小二乘法不起作用。 –