【问题标题】:How to compute simultaneous confidence region of OLS coefficients in statsmodels/python?如何在 statsmodels/python 中计算 OLS 系数的同时置信区域?
【发布时间】:2021-03-11 14:01:34
【问题描述】:

我一直在寻找,但找不到在 OLS 中计算 \beta 置信椭球的方法。 我想有一个现有的函数可以调用它而不是自己编写代码?

【问题讨论】:

    标签: python statistics statsmodels


    【解决方案1】:

    您可以使用RegressionResults 实例的conf_int method

    import numpy as np
    import pandas as pd
    from statsmodels.formula.api import ols
    data = pd.DataFrame(np.random.standard_normal((100,3)), columns=["y","x1","x2"])
    
    res = ols("y ~ 1 + x1 + x2", data).fit()
    # 90% confidence interval uses an alpha of 1 - 90%
    ci = res.conf_int(alpha=0.10)
    print(ci)
    
                      0         1
    Intercept -0.148565  0.173427
    x1        -0.195020  0.184610
    x2        -0.100552  0.209615
    

    您可以通过变量名称访问各个元素,例如 ci.loc["Intercept"],因为这些只是 pandas DataFrames。

    【讨论】:

    • conf_int 只给出每个β的置信区间,而不是同时置信区域。对吗?
    • 不支持多变量置信区域。例如,您可以通过查找 p 值小于 1 减去置信水平的点在网格上进行评估来反转 wald_test
    猜你喜欢
    • 2017-11-02
    • 2017-06-11
    • 2015-11-18
    • 2021-12-09
    • 1970-01-01
    • 2012-07-14
    • 2017-12-17
    • 2021-08-09
    • 1970-01-01
    相关资源
    最近更新 更多