首页 > 解决方案 > 熊猫数据框逐行比较中的 F1 分数

问题描述

我希望有人能帮我解决这个问题——我是新手。我希望有一个 9 x 5000 的数据框,第一行看起来像这样:

  Article IDInclude 0.3     1.4 1.5 1.6 1.7 1.9 2.0 2.3 2.5 3.2 

0   4514313 False   False   NaN NaN 0.0 1.0 0.0 1.0 1.0 0.0 1.0
1   4514313 False   False   NaN NaN 1.0 1.0 1.0 0.0 NaN 0.0 1.0
2   8420104 True    True    0.0 1.0 1.0 0.0 NaN 1.0 0.0 1.0 1.0

我想找到F1分数。每个“文章 ID”在数据集中出现两次,每个编码员一次,我想比较文章 ID 相同的行。有没有办法让第一次出现的文章 ID 为 y_true,第二次出现为 y_pred。

sklearn.metrics.f1_score(y_true, y_pred, *, labels=None, pos_label=1, average='binary', sample_weight=None, zero_division='warn')


Thank you! 

标签: pythonpandasdataframecomparison

解决方案


也许试试这个:

grouped = df.groupby('Article ID')
df_true = grouped.first().reset_index()
df_pred = grouped.last().reset_index()

推荐阅读