python - 无法修复“ValueError:未正确调用 DataFrame 构造函数!”
问题描述
我被要求编写一个线性回归程序,步骤如下。
- 将 R 数据集 mtcars 加载为 pandas 数据框。
- 通过考虑自变量 wt 的对数和因变量 mpg 的对数建立另一个线性回归模型。
- 用数据拟合模型,并显示 R 平方值
我是 Python 统计的初学者。
我尝试在不转换为新 DataFrame 的情况下获取日志值,但这给出了错误消息“TypeError: 'OLS' object is not subscriptable”
import statsmodels.api as sa
import statsmodels.formula.api as sfa
import pandas as pd
import numpy as np
cars = sa.datasets.get_rdataset("mtcars")
cars_data = cars.data
lin_mod1 = sfa.ols("wt~mpg",cars_data)
lin_mod2 = pd.DataFrame(lin_mod1)
lin_mod2['wt'] = np.log(lin_mod2['wt'])
lin_mod2['mpg'] = np.log(lin_mod2['mpg'])
lin_res1 = lin_mod2.fit()
print(lin_res1.summary())
预期结果是线性回归后的表格,但实际输出是错误的
[ValueError: DataFrame 构造函数没有正确调用!]
解决方案
这可能对你有用。
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)
推荐阅读
- sql - 将数据插入数据库时出现错误,我的代码无法正常工作
- ruby - Ruby For 循环未按预期运行
- xamarin - 如何在 C# 中编写具有列表和页面绑定的 DataTemplate
- jquery - 如何将 CSS 类或 id 添加到 Html.PagedListPager
- python - 为什么 django 地理地图无法正常工作?
- xpath - 如何找到正确的 Xpath 以使 importxml 功能正常工作
- node.js - Arduino One 使用 NodeJS 通过 nrf24 模块进行通信
- sql - 从 SQL Server 将数据导出到 csv
- mongodb - MongoDB分片集群 - 每秒问题
- c - 构建简单的内核模块 mkmakefile:没有这样的文件或目录