everda

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

np.polyfit

import numpy as np

X=[1,2,3,4,5,6]
Y=[2.6,3.4,4.7,5.5,6.47,7.8]

z1=np.polyfit(X,Y,1)#多项式回归,参数为自变量X,因变量Y,自由度(项)n
p1=np.poly1d(z1)#获取回归的表达式
print(z1)#返回回归系数和截距 [1.02885714 1.47733333]
print(p1)#返回回归方程 1.029 x + 1.477
print(p1(7))#代入x,求得回归预测结果y 8.67933333333333
#----------问题是,没有相关系数,也没有置信区间

import matplotlib.pyplot as plt

x=np.arange(1,7)
y=z1[0]*x+z1[1]
plt.figure()
plt.scatter(X,Y)
plt.plot(x,y)
plt.show()

posted on 2019-01-04 18:56  everda  阅读(303)  评论(0编辑  收藏  举报