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

如何按Class与Ecosystem多条件随机筛选DataFrame指定行数?

多条件随机抽样数据集问题

我拥有两个各含20行的数据集,希望按以下条件从每个数据集中随机选取10行:

df1 抽样要求

  • 8个Mammal(哺乳动物)
  • 2个Reptile(爬行动物)
  • 同时满足:6个Terrestrial(陆地生态系统)、4个Aquatic(水生生态系统)

df2 抽样要求

  • 4个Mammal(哺乳动物)
  • 2个Birds(鸟类)
  • 3个Reptile(爬行动物)
  • 1个Fish(鱼类)
  • 同时满足:6个Terrestrial(陆地生态系统)、4个Aquatic(水生生态系统)

我尝试过以下代码:

df1.query("Class = Mammal").sample(n=8)
df1.query("Class = Reptile").sample(n=2)

这类方案仅能满足Class的筛选要求,但无法加入Ecosystem的限制条件。我需要同时满足Class和Ecosystem的双重分组要求,认为可以通过对Class和Ecosystem两列使用groupby函数实现,但尚未找到具体方法。

示例数据

Common nameClassEcosystem
LionMammalTerrestrial
Humpback whaleMammalAquatic
CrocodileReptileAquatic

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 08:15:34