Я новичок в программировании и в настоящее время изучаю модели KNN.
Я написал код, но получаю ключевую ошибку и не могу ее исправить.
Я смотрю Учебное пособие по машинному обучению на YouTube от «Tech With Tim», и этот код находится в его 5-м видео на серии «Python Учебное пособие по машинному обучению» . Данные, которые я использовал, - это набор данных "Car Evaluation" из хранилища машинного обучения UCI. Я написал точно такой же код, но продолжаю получать следующую ошибку.
Это код, который я написал
import sklearn
from sklearn.utils import shuffle
from sklearn.neighbors import KNeighborsClassifier
import pandas as pd
import numpy as np
from sklearn import linear_model, preprocessing
data = pd.read_csv("car.data")
print(data.head())
le = preprocessing.LabelEncoder()
buying = le.fit_transform(list(data["buying"]))
maint = le.fit_transform(list(data["maint"]))
door = le.fit_transform(list(data["door"]))
persons = le.fit_transform(list(data["persons"]))
lug_boot = le.fit_transform(list(data["lug_boot"]))
safety = le.fit_transform(list(data["safety"]))
cls = le.fit_transform(list(data["cls"]))
predict = "class"
x = list(zip(buying, maint, door, persons, lug_boot, safety))
y = list(cls)
x_train, x_test, y_train, y_test = sklearn.model_selection.train_test_split(x, y, test_size=0.1)
print(x_train, y_test)
, и это ошибка, которую я получил
C:\Users\computer\anaconda3\envs\tensor\pythonw.exe "C:/Users/computer/PycharmProjects/TensorEnv2/test 2.py"
buying maint door persons lug_boot safety cls
0 vhigh vhigh 2 2 small low unacc
1 vhigh vhigh 2 2 small med unacc
2 vhigh vhigh 2 2 small high unacc
3 vhigh vhigh 2 2 med low unacc
4 vhigh vhigh 2 2 med med unacc
Traceback (most recent call last):
File "C:\Users\computer\anaconda3\envs\tensor\lib\site-packages\pandas\core\indexes\base.py", line 2646, in get_loc
return self._engine.get_loc(key)
File "pandas\_libs\index.pyx", line 111, in pandas._libs.index.IndexEngine.get_loc
File "pandas\_libs\index.pyx", line 138, in pandas._libs.index.IndexEngine.get_loc
File "pandas\_libs\hashtable_class_helper.pxi", line 1619, in pandas._libs.hashtable.PyObjectHashTable.get_item
File "pandas\_libs\hashtable_class_helper.pxi", line 1627, in pandas._libs.hashtable.PyObjectHashTable.get_item
KeyError: 'maint'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:/Users/computer/PycharmProjects/TensorEnv2/test 2.py", line 13, in <module>
maint = le.fit_transform(list(data["maint"]))
File "C:\Users\computer\anaconda3\envs\tensor\lib\site-packages\pandas\core\frame.py", line 2800, in __getitem__
indexer = self.columns.get_loc(key)
File "C:\Users\computer\anaconda3\envs\tensor\lib\site-packages\pandas\core\indexes\base.py", line 2648, in get_loc
return self._engine.get_loc(self._maybe_cast_indexer(key))
File "pandas\_libs\index.pyx", line 111, in pandas._libs.index.IndexEngine.get_loc
File "pandas\_libs\index.pyx", line 138, in pandas._libs.index.IndexEngine.get_loc
File "pandas\_libs\hashtable_class_helper.pxi", line 1619, in pandas._libs.hashtable.PyObjectHashTable.get_item
File "pandas\_libs\hashtable_class_helper.pxi", line 1627, in pandas._libs.hashtable.PyObjectHashTable.get_item
KeyError: 'maint'