我想在没有统计工具箱的情况下使用MATLAB计算inverse CDF of Student T distribution,但在Python和SciPy的帮助下,也可以参见https://stackoverflow.com/a/20627638/7556646。
以下代码使用Python 3.9.13从MATLAB R2023a运行
py.scipy.stats.t().ppf(0.975, df=4)
将显示以下错误:
Error using _distn_infrastructure>__init__
Python Error: TypeError: _parse_args() missing 1 required positional argument: 'df'
Error in _distn_infrastructure>freeze (line 824)
Error in _distn_infrastructure>__call__ (line 829)
提供了参数df
但无法识别。我不明白为什么?请参见https://ch.mathworks.com/help/matlab/matlab_external/python-function-arguments.html
对于正态分布,我可以使用MATLAB中的SciPy:
py.scipy.stats.norm().ppf(0.975)
返回1.9600
。
在Python中,我们可以这样做:
>>> scipy.stats.t.ppf(0.975, df=4)
2.7764451051977987
1条答案
按热度按时间cetgtptt1#
下面的代码将起作用: