from sklearn.neighbors import KNeighborsClassifier
from sklearn.preprocessing import StandardScaler
import numpy as np
# 1. Data [Usia, Gaji (Jutaan)] -> [Beli Mobil: 0=Tidak, 1=Ya]
X = [[20, 3], [25, 4], [30, 5], [40, 15], [50, 20]]
y = [0, 0, 0, 1, 1]
# 2. Scaling (WAJIB untuk KNN!)
# Karena Gaji (Jutaan) rentangnya beda dengan Usia (Puluhan)
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
# 3. Model
# n_neighbors=3 (Ganjil)
knn = KNeighborsClassifier(n_neighbors=3)
knn.fit(X_scaled, y)
# 4. Prediksi Orang Baru (35 tahun, Gaji 10 Juta)
orang_baru = [[35, 10]]
orang_baru_scaled = scaler.transform(orang_baru)
prediksi = knn.predict(orang_baru_scaled)
print("Prediksi:", "Beli Mobil" if prediksi[0] == 1 else "Tidak Beli")