0
我試圖從statsmodels.api.anova_lm
的幫助字符串重現例如:蟒蛇statsmodels.formula.api.ols:ValueError異常:對於數值的因素,必須NUM_COLUMNS是int
import statsmodels.api as sm
from statsmodels.formula.api import ols
moore = sm.datasets.get_rdataset("Moore", "car",
cache=True) # load data
data = moore.data
data = data.rename(columns={"partner.status" :
"partner_status"}) # make name pythonic
moore_lm = ols('conformity ~ C(fcategory, Sum)*C(partner_status, Sum)',
data=data).fit()
table = sm.stats.anova_lm(moore_lm, typ=2) # Type 2 ANOVA DataFrame
print table
然而
,我得到以下從moore_lm = ols('conformity ~ C(fcategory, Sum)*C(partner_status, Sum)', data=data)
錯誤消息:
ValueError: For numerical factors, num_columns must be an int
這是數據看起來的樣子:
>>> print data
partner_status conformity fcategory fscore
0 low 8 low 37
1 ... ... ... ...
我遇到了與我實際感興趣的數據集相同的問題;那麼是什麼原因導致這個錯
在附註中,C(<column>, Sum)
是做什麼用的?