我正在寻找一个状态模型MANOVA实现的示例。我不能确定玛诺瓦的Statsmodel网站的正面或反面。我已经说到:
endog, exog = np.asarray(pre_post[feats_list]), np.asarray(pre_post[features])
man = sm.MANOVA(endog,exog).fit()但是对于.fit(),我得到了一个错误:
NotImplementedError: 如果我将任何类型的输入输入到.fit()中,它就会告诉我参数太多了。
TypeError: fit() takes 1 positional argument but 2 were given我确实读过这个职位,并设法复制了相同的错误
man = sm.MANOVA(endog,exog)
man.mv_test()但似乎也没有任何解决办法。
我知道这是一个基本的编程问题,但我要感谢任何人,谁能提供任何关于如何让MANOVA工作,以及如何获得结果的模型后,它是合适的。在Python中,它似乎不是一个流行的软件包,我在网上找不到任何例子。非常感谢。
发布于 2019-02-07 13:08:09
我只是花了一个小时来了解他们的文件。设法以正确的格式得到我的数据,只为了得到一个NotImplementedError.模块还没有实现,尽管它假装是..。
添加编辑:查看状态模型glm。它可以非常类似地使用。这是文档。
发布于 2019-12-28 06:36:45
下面是一个演示如何使用该函数的小示例:
import numpy as np
from statsmodels.multivariate.manova import MANOVA
n_samples = 20
n_dim = 5
n_classes = 3
X = np.random.randn(n_samples, n_dim)
y = np.random.randint(n_classes, size=n_samples)
manova = MANOVA(endog=X, exog=y)
print(manova.mv_test())哪种输出
Multivariate linear model
============================================================
------------------------------------------------------------
x0 Value Num DF Den DF F Value Pr > F
------------------------------------------------------------
Wilks' lambda 0.3681 4.0000 16.0000 6.8678 0.0020
Pillai's trace 0.6319 4.0000 16.0000 6.8678 0.0020
Hotelling-Lawley trace 1.7170 4.0000 16.0000 6.8678 0.0020
Roy's greatest root 1.7170 4.0000 16.0000 6.8678 0.0020
============================================================有关演示如何使用from_formula接口的示例,请参阅此博客帖子。
https://stackoverflow.com/questions/53687921
复制相似问题