excel - 在 Excel 中计算 F1 分数

标签 excel

在统计中
如果您预测值为 1,而原始值为 1,则这称为真阳性 (TP)
如果预测为 0 且原始值为 1,则为假阴性 (FN)
如果预测为 1,原始值为 0,则为假阳性 (FP)
如果预测为 0 且原始值为 0,则为真阴性 (TN)
F1 score是一种衡量2个数据集之间关系的方法
是这样计算的
enter image description here
我有一个包含 1000 多个预测结果的文件
每个值为 0 或 1
看起来像这样

Label    0    1    2   ....   0    1    2    ...   
--------------------------------------------------
         0    0    1          0    1    1   
         1    0    0          1    0    1   
         0    1    1          0    0    0   
         0    0    1          0    1    1   
         1    0    0          0    0    0   
         1    0    1          0    1    1   
         0    0    1          1    0    1   
         1    1    1          1    1    0   
         0    1    0          1    0    1   
         1    1    0          0    0    1   
         1    0    0          0    1    0   
         1    1    0          1    1    1   
         0    1    1          1    0    1   
         0    0    1          0    1    1   
         0    1    0          1    0    0   
         1    1    0          0    1    0   
         0    1    1          1    1    1   
         0    0    0          1    0    0   
         0    0    1          0    1    1   
         0    1    1          1    0    0   
我能想到的唯一方法是拥有 1000 多个新列来检测 TP,另一个来检测 FP 和 anorger 1000 用于 TN,另外 1000 用于 FN
其中每个都有这个等式 =if(AND(B6=NB6,B6=1), 1, 0) 用于 TP 等等
这不是一个好的解决方案
有没有一种更快更简单的方法来获得这些列中的每一列的 F1 分数,或者甚至更好的 F1 分数微观和宏观?

最佳答案

我今晚不打算完成这个,但我认为测试数据的 B 列和 E 列的公式是
精确:

=COUNTIFS(B2:B21,1,E2:E21,1)/(COUNTIFS(B2:B21,1,E2:E21,1)+COUNTIFS(B2:B21,0,E2:E21,1))
记起
=COUNTIFS(B2:B21,1,E2:E21,1)/(COUNTIFS(B2:B21,1,E2:E21,1)+COUNTIFS(B2:B21,1,E2:E21,0))
你可以用同样的方式得到其他人
enter image description here
编辑
为清楚起见,我建议使用命名范围。这些范围将锚定到一组特定的行,这些行可能是动态的,但是当它们被拉过这样的东西时会引用不同的列
enter image description here
然后你可以对 TP 使用这样的公式
=COUNTIFS(Original,1,Prediction,1)
=TP/(TP+FP)
为了精确。
enter image description here

关于excel - 在 Excel 中计算 F1 分数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71365367/

相关文章:

excel - 仅复制行的选定范围

VBA - 在串联单元格之间插入空格

forms - 在 VBA 上的用户窗体之间传递多个条目

java - 如何将多个 Excel 文件合并到具有多个工作表的单个 Excel 工作簿中?

excel - Worksheet.CommandButton 生成方法未找到错误

vba - 创建工作簿中所有工作表名称的列表

vba - 通过本地 VBA 浏览 https SharePoint 文件和文件夹

excel - 向数字添加 0,具体取决于原始字符串在 Excel 中的长度

excel - 在 Excel VBA 中保存 PowerPoint 文件时出现不可抑制的错误

excel - 如何搜索列并返回具有特定值的下一列中的值