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

如何在pandas中循环遍历.iloc索引值实现多列按均值偏差批量运算

多列DataFrame批量对应参数运算简化方案

优先推荐使用pandas原生向量化运算,完全避免嵌套循环,代码简洁且运行效率更高:
核心逻辑是利用pandas的广播特性,直接对整表做批量运算,无需逐行逐列遍历,适配任意列数场景:

# 一步完成所有列的 (值 - 对应Mean)/对应Dev 运算
res_df = (df - df1['Mean'].values) / df1['Dev'].values

# 若需要逐行逐列打印结果,可遍历结果表
for _, row in res_df.iterrows():
    for val in row:
        print(val)

运行后得到的res_df就是和原df结构完全一致的结果表,每列都完成了对应的标准化运算。

如果你确实需要通过循环遍历索引实现,也可以通过遍历列索引简化代码,无需逐列硬编码逻辑:

# 遍历每一行
for row_idx in range(len(df)):
    # 遍历每一列的索引,自动适配列数
    for col_idx in range(len(df.columns)):
        current_val = df.iloc[row_idx, col_idx]
        mean = df1.iloc[col_idx]['Mean']
        dev = df1.iloc[col_idx]['Dev']
        print((current_val - mean) / dev)

以上两种写法都不需要随着列数增加修改代码,只要保证df1的行数和df的列数一一对应即可正常运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 00:57:00