You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何统计df1到df2对应列0→2、1→2的转换次数?

实现方法

方案一:直接按转换规则计数(轻量需求首选)

直接通过逐行匹配两个列的取值规则,对符合要求的行求和即可得到对应转换的次数:

# 统计0→2的转换次数
count_0to2 = ((df1['orig_label'] == 0) & (df2['predicted_label'] == 2)).sum()
# 统计1→2的转换次数
count_1to2 = ((df1['orig_label'] == 1) & (df2['predicted_label'] == 2)).sum()

print(count_0to2, count_1to2)

代入你提供的示例数据运行后,输出结果为1 1,和预期一致。
如果你的实际场景中两个列的名称不是示例中的orig_label和predicted_label,替换成你自己的列名col1、col2即可。

方案二:生成转换矩阵(多转换统计场景首选)

如果你后续还需要统计其他类型的状态转换次数,可以先通过交叉表生成完整的转换矩阵,之后可以直接取任意转换的计数值:

import pandas as pd
# 生成转换矩阵,行是df1的取值,列是df2的取值,值为对应转换的次数
trans_matrix = pd.crosstab(df1['orig_label'], df2['predicted_label'])
# 按需取对应转换的次数
count_0to2 = trans_matrix.loc[0, 2]
count_1to2 = trans_matrix.loc[1, 2]

内容的提问来源于stack exchange,提问作者Adam Rainah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 19:45:07