0-1混淆矩阵的代码实现,其中TP=191,FN=85,FP=2,TN=3
时间: 2024-09-05 07:00:38 浏览: 37
如果已知TP(真正例)等于191,FN(假阴性)等于85,FP(假阳性)等于2,TN(真阴性)等于3,我们可以手动构建一个0-1混淆矩阵。在这种情况下,由于TP、FP、TN和FN都是整数,可以直接用字典或列表的形式表示:
```python
conf_matrix = {
'实际类别': ['真实阳性的(Positive)', '真实阴性的(Negative)'],
'预测类别': ['预测阳性的(Positive)', '预测阴性的(Negative)'],
'计数': [TP, FN, FP, TN]
}
# 将计数转为二维列表,方便展示
matrix_data = [[conf_matrix['计数'][i], conf_matrix['计数'][j]] for i, j in zip([1, 2], [0, 3])]
# 使用numpy或pandas展示矩阵
import numpy as np
conf_matrix_df = pd.DataFrame(matrix_data, index=['TP', 'FP'], columns=['实际阳性的(Positive)', '实际阴性的(Negative)'])
print(conf_matrix_df)
# 或者直接打印计数值
print("TP:", TP, "FN:", FN, "FP:", FP, "TN:", TN)
```
这将输出一个简单的文本形式的混淆矩阵以及每个值。
相关问题
0-1混淆矩阵的代码实现
0-1混淆矩阵,也称为精确率召回率矩阵或对角线矩阵,用于评估分类模型的性能,特别关注真正例(True Positives, TP)、假正例(False Positives, FP)、真负例(True Negatives, TN)和假负例(False Negatives, FN)。以下是一个简单的Python代码示例,使用pandas库来创建和显示混淆矩阵:
```python
import pandas as pd
# 假设我们有实际类别(y_true)和预测类别(y_pred)的数据
y_true = [1, 0, 0, 1, 1] # 实际标签
y_pred = [1, 0, 1, 1, 0] # 预测结果
# 计算混淆矩阵
conf_matrix = pd.crosstab(y_true, y_pred, rownames=['Actual'], colnames=['Predicted'])
print(conf_matrix)
```
运行上述代码后,你会得到类似这样的矩阵:
```
Predicted
0 1
Actual
0 FP TN
1 FN TP
```
其中`FP`、`FN`、`TP`和`TN`分别代表了混淆矩阵中的数值。
混淆矩阵中的tp=16,fp=12,fn=8,tn=4,准确率,召回率精确率是怎么算的
准确率 = (tp + tn) / (tp + fp + fn + tn) = (16 + 4) / (16 + 12 + 8 + 4) = 20 / 40 = 0.5
召回率 = tp / (tp + fn) = 16 / (16 + 8) = 0.667
精确率 = tp / (tp + fp) = 16 / (16 + 12) = 0.57
阅读全文