Ich versuche, eine abgeschnittene Normalverteilung zu einigen Daten anzupassen. Allerdings habe ich in den folgenden Fehler ausgeführt wird:Anpassen von truncnorm mit fitdistrplus
<simpleError in optim(par = vstart, fn = fnobj, fix.arg = fix.arg, obs = data, gr = gradient, ddistnam = ddistname, hessian = TRUE, method = meth, lower = lower, upper = upper, ...): non-finite finite-difference value [1]>
Error in fitdist(testData, "truncnorm", start = list(a = 0, mean = 0.8, :
the function mle failed to estimate the parameters,
with the error code 100
Ich bin nicht sicher, was falsch läuft - ich habe gelesen, dass es in einigen Fällen Probleme passend sein kann, wenn die anfänglichen Vermutungen sind falsch oder höher als die tatsächliche Werte, aber ich habe eine Reihe von verschiedenen Startwerten ausprobiert und keiner scheint zu funktionieren.
Hier ist eine kleine Auswahl meiner Daten und der Code verwendete ich den Fehler zu erhalten:
library(fitdistrplus)
library(truncnorm)
testData <- c(3.2725167726, 0.1501345235, 1.5784128343, 1.218953218, 1.1895520932,
2.659871271, 2.8200152609, 0.0497193249, 0.0430677458, 1.6035277181,
0.2003910167, 0.4982836845, 0.9867184303, 3.4082793339, 1.6083770189,
2.9140912221, 0.6486576911, 0.335227878, 0.5088426851, 2.0395797721,
1.5216239237, 2.6116576364, 0.1081283479, 0.4791143698, 0.6388625172,
0.261194346, 0.2300098384, 0.6421213993, 0.2671907741, 0.1388568942,
0.479645736, 0.0726750815, 0.2058983462, 1.0936704833, 0.2874115077,
0.1151566887, 0.0129750118, 0.152288794, 0.1508512023, 0.176000366,
0.2499423442, 0.8463027325, 0.0456045486, 0.7689214668, 0.9332181529,
0.0290242892, 0.0441181842, 0.0759601229, 0.0767983979, 0.1348839304
)
fitdist(testData, "truncnorm", start = list(a = 0, mean = 0.8, sd = 0.9))
Dies lässt mich mit ein paar Fragen - die Daten, mit denen ich arbeite nicht weniger als Null sein kann, aber ich interessiere mich nicht unbedingt dafür, ob der Mittelwert negativ ist, wie ich gerade versuche zu passen eine Verteilung auf die Daten, so gut ich kann. Angesichts der Tatsache, dass mle-Schätzer tendenziell negativ sind, wenn "a" auf Null geht, wäre es besser, eine nicht-male Schätzung zu verwenden? Macht es Sinn, negative Werte von "a" zu haben, wenn die Daten selbst nicht negativ sein können? – mlinegar
Das sind sehr interessante Fragen, als ich vor einer Weile selbst über sie gestolpert bin und ich musste nachdenken, um sie herauszufinden. Ich denke jedoch, dass sie besser zu http://stats.stackexchange.com/ passen würden, da sie statistischer Natur sind. Wenn Sie sie dort mit Ihrem Beispiel veröffentlichen, werde ich Ihnen gerne eine erweiterte Antwort geben (die, wenn ich darüber nachdenke, dort vielleicht schon verfügbar ist). –
Danke, ich habe gerade die neue Frage hier gepostet: http://stats.stackexchange.com/questions/229624/fitting-truncated-distributions-using-fitdistrplus-with-a-lower-bound-of-zero – mlinegar