简体   繁体   English

(numpy.random.standard_t)如何确定自由度?

[英](numpy.random.standard_t) How to determine degrees of freedom?

Please advise me how to determine degrees of freedom 请告诉我如何确定自由度

1. I use the follow code to plot a student-t distribution with a histogram 1.我使用以下代码绘制带有直方图的学生t分布

# distribution fitting
param = t.fit(log_rets) 
# now get theoretical values in our interval      
pdf_t = stats.t.pdf(lnspc, param[0], param[1], param[2])
# plot it      
plt.plot(lnspc, pdf_t, label="student t") 
plt.show()

2. I found the param[3] as the following 2.我发现param [3]如下

(3.1512592116146094, 0.00046753124755725029, 0.0061044503250347361)

3. I would generate a random number with student-t, but don't know how to determine degrees of freedom 3.我会用student-t生成一个随机数,但不知道如何确定自由度

retvec = []
for i in range (n_obs):
    retvec.append(np.random.standard_t(**<degrees of freedom>**, size=n_assets))

Please feel free to comment. 请随意发表评论。

Regards, Nelson. 纳尔逊。

这是一个老问题,但是对于任何阅读它的人来说,params [0]这里是自由度(例如,尾巴大小),因此您可以使用scipy随机变量生成随机值:

roll = stats.t.rvs(df=params[0], loc=params[1], scale=params[2], size=n_assets)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM