Alguém sabe porque a distribuição t nosobreposição de histograma é apenas uma linha horizontal? Os avisos () em fit.std resultam da etimação do dof, o que pode levar a uma probabilidade infinita - ver Fernandez & Steel (1999).
library(zoo)
library(rugarch)
data(sp500ret)
g= zoo(sp500ret$SP500RET, as.Date(rownames(sp500ret)))
(fit.std = fitdistr(g,"t"))
mu.std = fit.std$estimate[["m"]]
lambda = fit.std$estimate[["s"]]
nu = fit.std$estimate[["df"]]
# plot
hist(g, density=20, breaks=20, prob=T)
curve(dt(x, nu, lambda), col="red", lwd=2, add=TRUE, yaxt="n")
Respostas:
3 para resposta № 1A partir do arquivo de ajuda para fitdistr
:
Para a distribuição denominada "t", a densidade é considerada a família da escala de localização com a localização m e a escala s.
Para uma família de escala de localização, se tivermos um parâmetro de localização m e um parâmetro de escala s, podemos obter a densidade em "x" usando a versão padronizada (localização = 0, escala = 1, chamar f) usando:
f((x-m)/s)/s
Então para você nós temos mu.std é o parâmetro de localização e lambda é a escala então nós queremos mudar sua linha para:
curve(dt((x-mu.std)/lambda, nu)/lambda, col="red", lwd=2, add=TRUE, yaxt="n")