我对使用Python还比较陌生,我正在尝试使用合并的数据集运行回归,它不断向我显示错误"TypeError:"value"必须是str或字节的实例,而不是float;。我不知道这意味着什么,也不知道如何修复。任何有帮助的东西!!!
这是我的代码
from statsmodels.formula.api import ols
fit = ols('Congregations ~ ViolentCrime ', data=data).fit()
print(fit.summary())
print(fit.params)
import matplotlib.pyplot as plt
plt.plot(data['ViolentCrime'], data['Congregations'], 'ro')
plt.plot(data['ViolentCrime'], fit.params.focal_year*data['ViolentCrime'] + fit.params.Intercept)
plt.ylabel('Congregations')
plt.xlabel('ViolentCrime')
错误图像
plt.plot认为它的前两个位置参数是x和y轴的标签。
绘制标记数据
有一种方便的方法可以绘制带有标记数据的对象(即可以通过索引obj['y']访问的数据(。您可以在数据参数中提供对象,而不是在x和y中给出数据:
>gt>plot('xlabel','ylabel',data=obj(
支持所有可索引对象>这可能是一句格言,一只熊猫。DataFrame或结构化numpy数组。
我找到了错误的来源。即使在我的excel表上删除了所有逗号和句点,excel也会自动添加成千上万的逗号。我找到了移除它们的方法,并且成功了。I Ctl+A选择了所有单元格,然后右键单击,选择"格式化单元格",转到选项卡"数字"下,并取消选择框"使用1000分隔符(,(">