如何解决如何使用for循环运行多个回归?
我有一个包含多个城市,一个响应变量和一个预测变量的数据集。我正在尝试对每个城市进行回归分析。这样不仅返回我一行数据,而且还返回系数为NaN。
train_output = pd.DataFrame(columns = ['intercept','coefficient','r2'])
for cit in train.city.unique():
y = train[train['city']==cit]['response']
y = np.array(y.values.tolist())
x = train[data['city']==cit]['predictor']
x = np.array(x).reshape((len(x),1))
model = LinearRegression().fit(x,y)
model_output = {'intercept':model.intercept_,'coefficient':model.coef_[0],'r2': model.score(x,y)}
df = pd.DataFrame(model_output,columns = ['intercept','r2'],index = [cit])
train_output.append(df)
print(train_output)
解决方法
在不查看数据的情况下很难说出来。 但是,最常见的原因是输入中的NaN或Inf(要素或标签)。 每次迭代都得到NaN吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。