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

如何删除Pandas DataFrame部分行以实现数据集平衡?

删除Pandas数据框中指定数量标签为0的行

需求说明

现有通过Pandas读取的CSV数据,结构如下:

file_path, label
   -        -

标签仅包含0和1,当前频数统计结果:

data["label"].value_counts()

0    197664
1     78444

需要删除20000条标签为0的行,使0的频数变为195664,最终统计结果如下:

data["label"].value_counts()

0    195664
1     78444

实现步骤

  • 第一步:筛选出所有标签为0的行的索引
zero_indices = data[data['label'] == 0].index
  • 第二步:从这些索引中随机选取20000个(若需固定随机结果,可添加random_state参数)
to_drop = zero_indices.sample(n=20000, random_state=42)
  • 第三步:删除选中的行
data = data.drop(to_drop)

验证结果

执行以下代码确认频数是否符合预期:

print(data['label'].value_counts())

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 16:06:28