import
matplotlib.pyplot as plt
from
sklearn.datasets
import
make_regression
from
sklearn.neighbors
import
KNeighborsRegressor
from
sklearn.model_selection
import
train_test_split
import
numpy as np
plt.figure()
plt.title(
'SIMPLE-LINEAR-REGRESSION'
)
x, y
=
make_regression(
n_samples
=
100
, n_features
=
1
,
n_informative
=
1
, noise
=
15
, random_state
=
3
)
plt.scatter(x, y, color
=
'red'
, marker
=
'o'
, s
=
30
)
knn
=
KNeighborsRegressor(n_neighbors
=
7
)
x_train, x_test, y_train, y_test
=
train_test_split(
x, y, test_size
=
0.2
, random_state
=
0
)
knn.fit(x_train, y_train)
predict
=
knn.predict(x_test)
print
(
'Test Accuracy:'
, knn.score(x_test, y_test))
print
(
'Training Accuracy:'
, knn.score(x_train, y_train))
x_new
=
np.linspace(
-
3
,
2
,
100
).reshape(
100
,
1
)
predict_new
=
knn.predict(x_new)
plt.plot(
x_new, predict_new, color
=
'blue'
,
label
=
"K = 7"
)
plt.scatter(x_train, y_train, color
=
'red'
)
plt.scatter(x_test, predict, marker
=
'^'
, s
=
90
)
plt.legend()