在統計中
如果您預測值為 1,而原始值為 1,則這稱為真陽性 (TP)
如果預測為 0 且原始值為 1,則為假陰性 (FN)
如果預測為 1,原始值為 0,則為假陽性 (FP)
如果預測為 0 且原始值為 0,則為真陰性 (TN)
F1 score是一種衡量2個資料集之間關系的方法
是這樣計算的
我有一個檔案,其中包含 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 等等
這不是一個好的解決方案
is there a faster easier way to get F1 score for each one of these columns or even better F1 score micro and macro for all?
uj5u.com熱心網友回復:
我今晚不打算完成這個,但我認為測驗資料的 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))
你可以用同樣的方式得到其他人
編輯
為清楚起見,我建議使用命名范圍。這些范圍將錨定到一組特定的行,這些行可能是動態的,但是當它們被拉過這樣的東西時會參考不同的列
然后你可以對 TP 使用這樣的公式
=COUNTIFS(Original,1,Prediction,1)
和
=TP/(TP FP)
為了精確。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/438571.html
標籤:excel