Снижение размерности в Python
Jeroen Boeye
Head of Machine Learning, Faktion
| Город | Цена |
|---|---|
| Берлин | 2 |
| Париж | 3 |
| Город | Цена |
|---|---|
| Берлин | 2 |
| Париж | 3 |

| Город | Цена |
|---|---|
| Берлин | 2,0 |
| Берлин | 3,1 |
| Берлин | 4,3 |
| Париж | 3,0 |
| Париж | 5,2 |
| ... | ... |

Отделите признак, который нужно предсказать, от признаков для обучения модели.
y = house_df['City']
X = house_df.drop('City', axis=1)
Разбейте данные: 70% — обучающая выборка, 30% — тестовая.
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)
Создайте классификатор на основе метода опорных векторов и обучите его на тренировочных данных.
from sklearn.svm import SVC
svc = SVC()
svc.fit(X_train, y_train)
from sklearn.metrics import accuracy_score
print(accuracy_score(y_test, svc.predict(X_test)))
0.826
print(accuracy_score(y_train, svc.predict(X_train)))
0.832
| Город | Цена |
|---|---|
| Берлин | 2,0 |
| Берлин | 3,1 |
| Берлин | 4,3 |
| Париж | 3,0 |
| Париж | 5,2 |
| ... | ... |

| Город | Цена | n_floors | n_bathroom | surface_m2 |
|---|---|---|---|---|
| Берлин | 2,0 | 1 | 1 | 190 |
| Берлин | 3,1 | 2 | 1 | 187 |
| Берлин | 4,3 | 2 | 2 | 240 |
| Париж | 3,0 | 2 | 1 | 170 |
| Париж | 5,2 | 2 | 2 | 290 |
| ... | ... | ... | ... | ... |
Снижение размерности в Python