Maximum Likelihood Schätzer für Weibull Parameter

2 views (last 30 days)
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 Comments
steff
steff on 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?

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!