拟合
x = np.arange(1, 17, 1)
y = np.array([4.00, 6.40, 8.00, 8.80, 9.22, 9.50, 9.70, 9.86, 10.00, 10.20, 10.32, 10.42, 10.50, 10.55, 10.58, 10.60])
df=pd.DataFrame(
{
'x':x,
'y':y
}
)
#线性回归
from sklearn import linear_model
x1 = df[['charge']] #dateframe,(16, 1)
y1 = df[['amt']]
lm = linear_model.LinearRegression()
lm.fit(x1, y1)
z1=lm.predict(2)
print(z1)
[[7.27533824]]
<class 'numpy.ndarray'>
取值:z1[[0]]
#二次曲线
x1=np.array(df['charge'])#array,(16,)
y1=np.array(df['amt'])
z1 = np.polyfit(x1,y1, 2)#用2次多项式拟合
p1 = np.poly1d(z1)
print(p1(2))
6.341551470588236
<class 'int'>
#神经网络
x1 = np.array(df['charge'])
y1 = np.array(df['alipay_inshop_amt'])
x1=x1.reshape(len(x1),1)
clf = MLPRegressor(solver='lbfgs', alpha=1e-5, hidden_layer_sizes=(5, 2), random_state=1)
clf.fit(x1, y1)
z1 = clf.predict(2)#<class 'numpy.ndarray'>
[7.27533824]
<class 'numpy.ndarray'>
取值:z1[0]
posted on 2018-09-28 10:50 happygril3 阅读(121) 评论(0) 收藏 举报
浙公网安备 33010602011771号