jxn*_*jxn 3 python regression numpy matplotlib scipy
我的代码对2组数据进行线性回归.它工作正常,但我不知道如何用scipy或numpy将线的方程打印到图表本身.
这是我的代码:
y=np.array([15,1489,859,336,277,265,229,285,391,372,5,345])
x=np.array([196.16,17762.47,28542.19,30170.5,9384.06,43210.29,21819.2,16978.2,45767.54,12328.78,113.71,19257.6])
print x
print y
slope, intercept, r_value, p_value, slope_std_error = stats.linregress(x, y)
print "slope = "+ str(slope)
print "r_value = "+ str(r_value)
print "r_squared = " + str(r_value**2)
print "p_value = "+str(p_value)
# Calculate some additional outputs
predict_y = intercept + slope * x
print predict_y
pred_error = y - predict_y
degrees_of_freedom = len(x) - 2
residual_std_error = np.sqrt(np.sum(pred_error**2) / degrees_of_freedom)
# Plotting
pylab.xlabel('cost')
pylab.ylabel('signups')
pylab.plot(x, y, 'o')
pylab.plot(x, predict_y, 'k-')
pylab.show()
Run Code Online (Sandbox Code Playgroud)
你想在哪个方程式去?把它放在标题上,例如:plt.title('$y=%3.7sx+%3.7s$'%(slope, intercept)).把它放在情节内使用plot.text.
