我正在对Python进行线性回归,以预测象牙海岸不同地点的库存分布。我有2016年至2019年9月的数据,看起来像。列为。 我在站点代码上使用了标签编码。共有156个不同的站点,每个站点的标签范围为0-155。类似地,我使用Get_dummies函数为11个不同的产品代码获取11个不同的列。 然后我使用线性回归来帮助预测产量,令我惊讶的是,R平方值是100%。 代码:
lm=sm.OLS(df_logistics_new_onehot_label['stock_distributed'],df_logistics_new_onehot_label[['intercept','year', 'month','site_code', 'stock_initial',
'stock_received', 'stock_adjustment', 'stock_end',
'average_monthly_consumption', 'stock_stockout_days', 'stock_ordered',
'site_latitude', 'site_longitude',
'product_code_AS21126', 'product_code_AS27000',
'product_code_AS27132', 'product_code_AS27133', 'product_code_AS27134',
'product_code_AS27137', 'product_code_AS27138', 'product_code_AS27139',
'product_code_AS42018', 'product_code_AS46000',
'site_type_Health Center',
'site_type_University Hospital/National Institute']])
results=lm.fit()
results.summary()
我进一步将数据分为培训和测试
X=df_logistics_new_onehot_label[['intercept','year', 'month','site_code', 'stock_initial',
'stock_received', 'stock_adjustment', 'stock_end',
'average_monthly_consumption', 'stock_stockout_days', 'stock_ordered',
'site_latitude', 'site_longitude',
'product_code_AS21126', 'product_code_AS27000',
'product_code_AS27132', 'product_code_AS27133', 'product_code_AS27134',
'product_code_AS27137', 'product_code_AS27138', 'product_code_AS27139',
'product_code_AS42018', 'product_code_AS46000',
'site_type_Health Center',
'site_type_University Hospital/National Institute']]
y=df_logistics_new_onehot_label['stock_distributed']
X_train, X_test, y_train, y_test = train_test_split(X, y ,test_size = 0.2, shuffle=False)
clf=LinearRegression()
clf.predict(X_test)
您的目标变量与以下列具有完美的相关性:
从逻辑上讲,它们是相互关联的。首先尝试删除这些列,然后再次尝试线性回归
相关问题 更多 >
编程相关推荐