Длина матрицы путаницы Python - PullRequest
0 голосов
/ 23 мая 2019

Я пытаюсь оценить точность и производительность нескольких классификаторов KNN.

DataTest["ConfM_K30_ST"] = confusion_matrix(
    DataTest["ST_Class"], 
    DataTest["KNN_K30_ST"]
    )        

aux = DataTest["ST_Class"]
aux1 = DataTest["KNN_K30_ST"]

При попытке сравнить прогнозируемый результат с оригиналами я получаю следующую ошибку:

ValueError: Length of values does not match length of index

DataTest - это мой DataFrame, содержащий 20% данных.Для этого примера помеченные данные - "ST_Class", а прогнозируемые данные - "KNN_K30_ST".

Чтобы проверить, что происходит, я установил эти 2 кадра данных на aux и aux1.Они оба имеют тип Series с sizes (3224,).

Единственная проблема, которую я мог видеть, состоит в том, что индексы не являются непрерывными и не начинаются с 0 и не заканчиваются в 3223. Чтобы облегчить понимание, см. Изображениениже.

Ссылка: https://i.imgur.com/Splhr62.png

Ответы [ 2 ]

0 голосов
/ 23 мая 2019

Как и предполагалось, я невольно пытался сохранить запутанную матрицу в DataFrame. Мое решение состояло в том, чтобы установить это в Словаре.

Спасибо всем за быстрые ответы!

0 голосов
/ 23 мая 2019

Единственная ошибка, которую я вижу, это то, что вы пытаетесь сохранить confusion matrix как column в dataframe.Это невозможно из-за несоответствия размера.

Вот небольшой пример

df1
   a
0  1
2  1
4  1

df2
   a
1  0
3  1
5  0

# Output from the confusion matrix
confusion_matrix(df1, df2)
array([[0, 0],
       [2, 1]])

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...