有人知道为什么直方图叠加中的t分布只是一条水平线吗? fit.std中的警告()得自自由度的估计,这可能导致无限的可能性 - 参见Fernandez&钢铁(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")
答案 0 :(得分:4)
来自fitdistr
的帮助文件:
对于“t”命名分布,密度被视为具有位置m和比例s的位置比例族。
对于位置比例族,如果我们有位置参数m和比例参数s,那么我们可以使用标准化版本(位置= 0,比例= 1,将其称为f)通过使用获得密度为'x' :
f((x-m)/s)/s
所以对你来说我们有mu.std是位置参数而lambda是比例所以我们想把你的行换成:
curve(dt((x-mu.std)/lambda, nu)/lambda, col="red", lwd=2, add=TRUE, yaxt="n")