首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用状态模型从MANOVA检验结果中只提取p值

用状态模型从MANOVA检验结果中只提取p值
EN

Stack Overflow用户
提问于 2021-03-09 13:57:03
回答 1查看 403关注 0票数 0

我对statsmodel进行了MANOVA测试,如下所示:

代码语言:javascript
复制
manova = MANOVA(endog=X, exog=y)

print(manova.mv_test())

因此,我得到了下表:

代码语言:javascript
复制
                 Multivariate linear model
============================================================
                                                            
------------------------------------------------------------
           x0           Value  Num DF  Den DF F Value Pr > F
------------------------------------------------------------
          Wilks' lambda 0.7762 5.0000 28.0000  1.6148 0.1887
         Pillai's trace 0.2238 5.0000 28.0000  1.6148 0.1887
 Hotelling-Lawley trace 0.2884 5.0000 28.0000  1.6148 0.1887
    Roy's greatest root 0.2884 5.0000 28.0000  1.6148 0.1887
============================================================

我的问题是,如何只提取p值?在this帖子之后,我尝试过这样做:

代码语言:javascript
复制
 print(manova.mv_test().results['x0']['stat'].values['Hotelling-Lawley trace',4])

但是我得到了索引错误,而且我也不确定我是否理解它背后的逻辑。

IndexError:只有整数、片(:)、省略号(...)、numpy.newaxis (None)和整数或布尔数组才是有效的索引。

我的最终目标是只将p值保存为新变量,例如从表.中“提取”p值。

也许理解这个表是如何生成的也会有帮助,因为我不知道这是什么(它不是熊猫,也不像矩阵,所以我怎么能从中切任何东西?)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-21 20:33:24

我能够用这一行解决同样的问题,在您的情况下,应该是:

代码语言:javascript
复制
x = pd.DataFrame((manova.mv_test().results['x0']['stat']))

现在您可以选择任何结果。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66548275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档