一、AUC含义
AUC是二分类指标ROC曲线下方的面积,在0~1之间。而在预测结果概率列表中可以理解为负样本排在正样本前面的概率(对概率值列排序)。
二、概率列表
通常建模结果可以输出为包含两列的表,第一列为真实标签(1/0),第二列为预测标签1的概率,示例如下:
三、利用awk计算AUC
(1)先用sort命令对第二列概率排序
(2)计算第一列中1在0之前的概率α,然后用1-α代表AUC
命令如下:
cat auc.txt | sort -t$' ' -k2g | awk -F' ' 'BEGIN{x=0;a=0;y=0}($1==0){++x;a+=y}($1==1){++y}END{print 1.0-a/(x*y)}'