首页 > 解决方案 > Python - 在解决“将 R 数据集 mtcars 加载为 pandas 数据框”时需要帮助。问题

问题描述

我正在解决这个问题,不确定如何进行。

将 R 数据集 mtcars 加载为 pandas 数据框。通过考虑自变量 wt 的对数和因变量 mpg 的对数建立线性回归模型。用数据拟合模型。

对上一步得到的线性模型进行ANOVA。(提示:使用anova.anova_lm)

显示 F 统计量值。

我在下面的另一篇文章中看到提供了解决方案。但这似乎不起作用。

import statsmodels.api as sm
import numpy as np
mtcars = sm.datasets.get_rdataset('mtcars')
mtcars_data = mtcars.data
liner_model = sm.formula.ols('np.log(wt) ~ np.log(mpg)',mtcars_data)
liner_result = liner_model.fit()
print(liner_result.rsquared)'''

标签: python-3.xlinear-regressionanova

解决方案


解决它

import statsmodels.api as sm
import numpy as np
import pandas as pd
import statsmodels.formula.api as smf
from statsmodels.stats import anova

mtcars = sm.datasets.get_rdataset("mtcars", "datasets", cache=True).data
df = pd.DataFrame(mtcars)
model = smf.ols(formula='np.log(mpg) ~ np.log(wt)', data=mtcars).fit()
print(anova.anova_lm(model))
print(anova.anova_lm(model).F["np.log(wt)"])

推荐阅读