Я пытаюсь рассчитать True Positive rate ect. бинарной матрицы путаницы и вывод результатов в файл csv.Данные печатаются, но не записываются в dataframe
результатовimport pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import csv
from sklearn.metrics import confusion_matrix
AllBinary = pd.read_csv('BinaryData.csv')
y_test = AllBinary['Binary_ac']
y_pred = AllBinary['Binary_pred']
cm = confusion_matrix(y_test, y_pred)
stats = pd.DataFrame()
TP = cm[0][0]
FP = cm[0][1]
FN = cm[1][0]
TN = cm[1][1]
stats['TruePositive'] = TP
stats['TrueNegative'] = TN
stats['FalsePositive'] = FP
stats['FalseNegative'] = FN
print(TP)
print(TN)
print(FP)
print(FN)
stats.to_csv('C:/out/' + 'BinaryStats' + '.csv', header = True)
отпечаток показывают, что основные статистики спутанности матрицы вычисляются следующим образом:
210483
153902
32845
10788
Выхода CSV создает заголовки, но результаты являются пустыми. Что я делаю неправильно?
Update:
print(stats)
Empty DataFrame
Columns: [TruePositive, TrueNegative, Falsepositive, FalseNegative]
просто 'печати (статистика)', чтобы увидеть, что внутри. –
делает 'stats.to_csv (r'C: /out/BinaryStats.csv ', header = True)' work? – EdChum
stats.to_csv (r'C: /out/BinaryStats.csv 'header = True) дает те же результаты. Спасибо за предложение. Я печатал статистику, как предположил Джордж, и информационный кадр пуст. Я не понимаю, почему значение «TP» печатает, но не записывается в dataframe. – kharn