当我想指定自由度(df),均值和方差时,如何从R中的t分布中进行采样?例如,我如何从t分布中采样 8 df,mean = 4,variance = 16?我想我必须以某种方式使用非中心性参数,但我不确定如何。
答案 0 :(得分:12)
您想要 noncentral t,还是只需缩放和移位(中央)t?要从位置为m
和比例参数s
的t分布中进行抽样,请执行
rt(N, df=df)*s + m
t分布的方差为df/(df-2)
,因此要获得特定的方差v
:
rt(N, df=df)*sqrt(v * (df-2)/df) + m
答案 1 :(得分:0)
如果查看rt
的代码,您会看到非中心t的随机变量从以下位置返回:
rnorm(n, ncp)/sqrt(rchisq(n, df)/df)
因此,非中心性参数被赋予rnorm
作为分子分布的平均值。