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

如何从Pandas DataFrame中按4类标签各随机抽取300个样本?

从多类别Pandas DataFrame中按类抽取固定数量样本

你可以借助Pandas的groupby()结合sample()方法快速实现需求,步骤如下:

  1. 确认各类样本数量
    先检查每类标签的样本数是否满足抽取300个的要求,避免后续报错:

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

    (将'label'替换为你实际的标签列名称)

  2. 按类随机抽取样本
    通过分组后抽样,直接得到整合后的新DataFrame:

    # 每组抽取300个,random_state保证结果可复现(可选)
    sampled_df = df.groupby('label').sample(n=300, random_state=42)
    
  3. 特殊情况处理
    如果某类样本数量不足300,且你允许重复抽取同一样本,可添加replace=True参数:

    sampled_df = df.groupby('label').sample(n=300, random_state=42, replace=True)
    
  4. 验证结果
    检查新DataFrame中各类样本数量是否符合预期:

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

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 03:12:12