我对R. std中的student-t分布的定义std和t有一个问题,其中包含 rugarch 包,而t来自stats包。在绘图时
qqplot(qstd(c(1:1000)/1001, nu=5),qt(c(1:1000)/1001,df=5))
abline(0,1)
很明显,这两个定义是不同的。谁能告诉我为什么会出现这种差异以及哪一个函数给出了正确的值?
答案 0 :(得分:0)
如果您打开qstd
功能(实际上来自 fGarch ),您会看到它正在修改stats::qt
:
> qstd
function (p, mean = 0, sd = 1, nu = 5)
{
s = sqrt(nu/(nu - 2))
result = qt(p = p, df = nu) * sd/s + mean
result
}
<environment: namespace:fGarch>
所以,它给你的是"non-standardized Student's t-distribution",而不是 stats 提供的标准化发行版。如果s=1
和自由度变为无穷大,它们将产生相同的结果。