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

Python Pandas条件计算:基于原料占比计算棉花产量

简洁实现方案

不用枚举所有组合,用Pandas的向量化操作就能轻松搞定,步骤如下:

  • 第一步:拆分原料与占比列
    先把原料列(RM1-RM3)和对应的占比列(RM1%-RM3%)单独拎出来,方便后续操作:

    # 假设你的DataFrame名为df
    raw_materials = ['RM1', 'RM2', 'RM3']
    percentages = ['RM1%', 'RM2%', 'RM3%']
    
  • 第二步:计算每行Cotton原料的占比总和
    用原料列等于"Cotton"的判断结果,筛选出对应占比列的值,再按行求和(非Cotton对应的占比会被设为NaN,求和时自动忽略):

    cotton_total_percent = df[percentages].where(df[raw_materials] == 'Cotton').sum(axis=1)
    
  • 第三步:生成目标列
    把占比总和乘以Prod(kg/h)再除以100,就是你要的结果。如果想让不含Cotton的行显示0,就加.fillna(0):

    # 不含Cotton的行结果为NaN
    df['New Column Cotton Prod'] = (cotton_total_percent * df['Prod(kg/h)']) / 100
    
    # 或者让不含Cotton的行显示0
    df['New Column Cotton Prod'] = (cotton_total_percent * df['Prod(kg/h)'] / 100).fillna(0)
    

整个过程都是Pandas原生的向量化运算,既简洁又高效,完全不用手动枚举所有可能的Cotton组合。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 11:15:35