Maximum Likelihood Schätzer für Weibull Parameter

Guten Abend zusammen, Ich muss die Parameter einer Weibull-Verteilung auf Basis von Ausfalldaten schätzen. Der Weg mittels 'mle' ist mir bekannt - da die Verteilung später aber modifiziert bzw. erweitert werden soll brauche ich einen anderen Weg. Ich bekomme mit meinem aktuellen Code aber keine/die falschen Ergebnisse. Kann mir da jemand auf die Sprünge helfen? Vielen Dank!
%%Ausfalldaten (Beispieldaten)
data = [16,34,53,75,93,120];
%%Parameterschätzung (MaxLike)
% C=eta, B=beta
syms B C
%Likelihood-Funktion
LLH=1;
for i=1:numel(data)
LLH=LLH.*((B./C).*(data(i)./C).^(B-1).*exp(-(data(i)./C).^(B)));
end
%partielle Ableitungen
dLdB=diff(LLH,B);
dLdC=diff(LLH,C);
%Gleichungssystem lösen
Bt=solve(dLdB==0,B)
Ct=solve(subs(dLdC,B,Bt)==0,C)
Ich bekomme für für Bt immer einen Fehler 'Bt = Empty sym: 0-by-1'. Werte ich zuerst Ct=solve(dLdC==0,C) aus und danach erst Bt kommt die gleiche Fehlermeldung für Bt.
Viele Grüße und Danke schonmal!

2 Kommentare

Karan Gill
Karan Gill am 22 Sep. 2017
Bearbeitet: Karan Gill am 22 Sep. 2017
Sorry I do not know German. But you troubleshoot your solution using https://www.mathworks.com/help/symbolic/troubleshoot-equation-solutions-from-solve-function.html
steff
steff am 22 Sep. 2017
Sorry - could have asked in english as well. I already tried to fix the solutions using assumptions, but this only leads to some huge calculation times for Bt (I cancelled after 10min).
I thought about trying to solve for Bt numerically. Is this done just by replacing 'solve' with 'vpasolve' or do I have to change some other code as well?

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Gefragt:

am 22 Sep. 2017

Kommentiert:

am 22 Sep. 2017

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by