问题描述
我试图做一个双向方差分析,试图找出两个变量(B和M)在样品分类(由参数C给出)中的重要性。
我正在尝试调整数据框的形状以使其适合statsmodels
包。但是,使用pd.melt一次只能包含一个变量(B或M)。
关于如何使用两个变量的值执行双向ANOVA的任何建议(以下面给出的代码的最后两行的方式)将很有帮助。
B,M和C的值:
B : [10.,4.,6.,5.]
M : [9.,8.,6.]
C : [1.,2.,3.,1.]
import numpy as np
import pandas as pd
import statsmodels.api as sm
from statsmodels.formula.api import ols
d = pd.read_csv("/Users/Hrihaan/Desktop/Data.txt",sep="\s+")
d_melt = pd.melt(d,id_vars=['C'],value_vars=['B'])
#model = ols('C ~ C(B) + C(M) + C(B):C(M)',data=d_melt).fit()
#anova_table = sm.stats.anova_lm(model,typ=2)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)