我有一个关于python中非标准化t分布的问题。我有位置,自由度和比例参数,我分别使用符号a
,b
和c
。我想要做的是使用这些参数从非标准化t分布中抽样。
我在网上scipy.stats.t
找到了关于python用于制定非标准化t分布的参数。
使用stats.t.rvs(a, b, c)
从此分发中抽样是否正确?
答案 0 :(得分:0)
如您的链接所示,scipy.stat.t.rvs
的格式为:
rvs(df,loc = 0,scale = 1,size = 1,random_state = None)
没有那个显式指示符,输入根据函数定义中指定的顺序进行赋值(省略的任何内容都被默认值替换)
因此,在这种情况下,正确的抽样顺序是:
stats.t.rvs(b, a, c)
这会设置loc = a
,df = b
,scale = c
,size = 1
(默认值)和random_state = None
(也是默认值)
您还可以按任何顺序将变量显式设置为函数的参数
stats.t.rvs(loc = a, df = b, scale = c)
与上述结果相同。
正如@Everts建议的那样,如果变量名称匹配则更容易验证参数是否正确,所以:
df = b
loc = a
scale = c
stats.t.rvs(df = df, loc = loc, scale = scale)
是最清晰的方法,可以防止您被绊倒。