【发布时间】:2016-12-03 03:20:52
【问题描述】:
我正在尝试对以下数据执行线性回归。
X = [[ 1 26]
[ 2 26]
[ 3 26]
[ 4 26]
[ 5 26]
[ 6 26]
[ 7 26]
[ 8 26]
[ 9 26]
[10 26]
[11 26]
[12 26]
[13 26]
[14 26]
[15 26]
[16 26]
[17 26]
[18 26]
[19 26]
[20 26]
[21 26]
[22 26]
[23 26]
[24 26]
[25 26]
[26 26]
[27 26]
[28 26]
[29 26]
[30 26]
[31 26]
[32 26]
[33 26]
[34 26]
[35 26]
[36 26]
[37 26]
[38 26]
[39 26]
[40 26]
[41 26]
[42 26]
[43 26]
[44 26]
[45 26]
[46 26]
[47 26]
[48 26]
[49 26]
[50 26]
[51 26]
[52 26]
[53 26]
[54 26]
[55 26]
[56 26]
[57 26]
[58 26]
[59 26]
[60 26]
[61 26]
[62 26]
[63 26]
[64 26]
[65 26]
[66 26]
[67 26]
[68 26]
[69 26]]
Y = [ 192770 14817993 1393537 437541 514014 412468 509393 172715
329806 425876 404031 524371 362817 692020 585431 446286
744061 458805 330027 495654 459060 734793 701697 663319
750496 525311 1045502 250641 500360 507594 456444 478666
431382 495689 458200 349161 538770 355879 535924 549858
611428 517146 239513 354071 342354 698360 467248 500903
625170 404462 1057368 564703 700988 1352634 727453 782708
1023673 1046348 1175588 698072 605187 684739 884551 1067267
728643 790098 580151 340890 299185]
我正在尝试绘制结果以查看回归线
regr = linear_model.LinearRegression()
regr.fit(X, Y)
plt.scatter(X[:,0], Y, color='black')
plt.plot(X[:,0], regr.predict(X), color='blue',
linewidth=3)
plt.xticks(())
plt.yticks(())
plt.show()
('系数:\n', array([-34296.90306122, 0. ])) 残差平方和:1414631501323.43 方差分数:-17.94
我正在尝试预测
pred = regr.predict([[49, 26]])
print pred
训练数据中已经存在的东西,结果是 [-19155.16326531]
其实际值为625170
我做错了什么?
请不要 26 的值来自更大的数组,我已将该 dat 切成一小部分以便在 26 上进行训练和预测,同样 X[:,0] 可能不是连续值,它再次出现从一个更大的数组。 数组我的意思是 numpy 数组
【问题讨论】:
-
X 到底是什么?那是一个numpy数组吗?一切都在策划它应该在哪里吗?我猜不是,因为“pred”的结果太混乱了
-
如果您将其编辑为可重现,这将是一个更好的问题。例如,您的数据中的所有逗号都丢失了,您可以互换使用 X 和 x。这些只是我注意到的那些。
标签: python machine-learning scikit-learn linear-regression