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

如何在Python Pandas中按supp和dose分组计算均值与标准差?

解决Pandas分组同时计算均值和标准差的问题

当然可以一次性完成这两个统计量的计算,你之前的代码错误在于agg函数的参数格式不符合要求。以下是正确的实现方法:

完整代码示例

import pandas as pd

# 读取CSV数据(直接兼容你提供的带引号的CSV格式)
data = pd.read_csv('your_data.csv')  # 替换为你的文件路径,也可直接传入CSV字符串

# 按"supp"和"dose"分组,对"len"列计算均值和标准差
result = data.groupby(['supp', 'dose'])['len'].agg(['mean', 'std'])

# 可选:保留两位小数优化结果展示
result = result.round(2)

print(result)

代码说明

  1. 参数格式修正:你之前写的{['mean', 'std']}是无效的字典结构,正确写法需要指定计算统计量的目标列(这里是len),再传入统计量列表。
  2. 简化写法:如果要对所有数值型列统一计算这两个统计量,可省略列名直接写:
    result = data.groupby(['supp', 'dose']).agg(['mean', 'std'])
    
  3. 结果样式调整:round(2)可以将结果保留两位小数,让输出更整洁。

示例输出

mean   std
supp dose            
OJ   0.5    13.23  4.46
     1.0    22.70  3.91
     2.0    26.06  2.65
VC   0.5     7.98  2.75
     1.0    16.77  2.52
     2.0    26.14  4.70

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 17:15:49