import numpy as np
复制代码
import matplotlib.pyplot as plt
%matplotlib inline
复制代码
x = np.linspace(0, 30, 20)
复制代码
y = x + 3*np.random.randn(20)
复制代码
plt.figure(figsize=(10, 8))
plt.scatter(x, y)
复制代码
<matplotlib.collections.PathCollection at 0x1115cc208>
复制代码
from sklearn.linear_model import LinearRegression
复制代码
model = LinearRegression()
复制代码
X = x.reshape(-1, 1)
复制代码
Y = y.reshape(-1, 1)
复制代码
model.fit(X, Y)
复制代码
LinearRegression(copy_X=True, fit_intercept=True, n_jobs=1, normalize=False)
复制代码
model.predict([[40]])
复制代码
array([[38.18890435]])
复制代码
plt.figure(figsize=(12, 8))
plt.scatter(X, Y)
plt.plot(X, model.predict(X))
复制代码
[<matplotlib.lines.Line2D at 0x1a1c284e48>]
复制代码
Y_PRE = model.predict(X)
复制代码
np.sum(np.square(Y_PRE, Y))
复制代码
5760.457790652543
复制代码
model.coef_, model.intercept_
复制代码
(array([[0.94170908]]), array([0.52054117]))
复制代码