【问题标题】:Multiple Linear Regression in Python (PatsyError: model is missing required outcome variables)Python 中的多元线性回归(PatsyError:模型缺少所需的结果变量)
【发布时间】:2017-09-19 15:21:12
【问题描述】:

我在 Python 中运行以下回归代码,但出现错误(PatsyError:模型缺少必需的结果变量)。我如何解决它? 谢谢

Y = spikers['grade'] 
X = spikers[['num_pageview', 'num_video_play_resume', 'eng_proficiency', 'english']] 
model = smf.ols(Y,X).fit() 
model.summary()

【问题讨论】:

  • 您需要展示更多代码。像 patsy 字符串。
  • spikers['grade'] 可能是空值。只是一个猜测。提供更多信息以获得更多帮助。阅读,stackoverflow.com/help/mcve
  • 看起来你正在混合这两个接口,如果你在数组或 pandas Series/DataFrame 中直接有 y 和 x,请使用 sm.OLS(大写字母)。使用公式接口时,第一个参数为公式字符串smf.ols("grade ~ ...)

标签: python pandas regression


【解决方案1】:

您应该使用以下命令:

df = pd.DataFrame({'x':X, 'y':Y})
model = smf.ols('y~x', data=df).fit()

其中df是你的DataFrame类型数据。

【讨论】:

    【解决方案2】:

    我在尝试在二进制(0 或 1)的结果变量“y”上运行 sm.logit 时遇到了一个非常相似的问题:让我的所有数据都在名为“数据”的 pandas 数据框中:

    import statsmodels.formula.api as sm
    
    X = ['Age','Sex','x1','x2','x3','x4']
    logit = sm.logit(data['y'],data[X])
    result = logit.fit()
    print result.summary()
    
    Traceback (most recent call last):
    
      File "<ipython-input-XXX>", line 1, in <module>
        logit = sm.logit(data['y'],data[X])
    
      File "C:\...\statsmodels\base\model.py", line 147, in from_formula
        missing=missing)
    
      File "C:\...\statsmodels\formula\formulatools.py", line 68, in handle_formula_data
        NA_action=na_action)
    
      File "C:\...\patsy\highlevel.py", line 312, in dmatrices
        raise PatsyError("model is missing required outcome variables")
    
    PatsyError: model is missing required outcome variables
    

    我收到了上面显示的此错误消息。我设法解决了这个问题,并改用这种表示法得出了一些合理的结果:

    f1 = 'y ~ Age+Sex+x1+x2+x3+x4'
    logit = sm.logit(formula = f1, data = data)
    result = logit.fit()
    

    据我所知,通常首选 statsmodels.formula.api 的这种符号使用

    【讨论】:

    • 可以使用array/DataFrame接口,只需要使用正确的类import statsmodels.api as smsm.Logit(...)即可。
    猜你喜欢
    • 2021-11-29
    • 2016-02-03
    • 1970-01-01
    • 2019-03-30
    • 2020-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多