使用Python按指定公式计算Excel数据并写入H列问题求助
你的计算逻辑核心是C4、D4为固定值,其余行取对应行的B、C、D列参与运算,直接用pandas向量化运算即可实现,不需要逐行写循环,完整补充后的代码如下:
import pandas as pd import matplotlib.pyplot as plt import numpy as np import seaborn as sns %matplotlib inline # 读取Excel文件 df = pd.read_excel("ICRU_blank_af.xlsx") # 展示前5行确认数据读取正确 print(df.head(5)) # 提取Excel第4行的C、D列固定值(pandas索引从0开始计数,Excel行号减1为对应索引) fixed_c4 = df.loc[3, 'C'] fixed_d4 = df.loc[3, 'D'] # 批量计算Excel第5行及以后所有行的H列值 # 公式规则:(当前行D列 * 固定D4值 + 当前行C列 * 固定C4值) * 当前行B列值 df.loc[4:, 'H'] = (df.loc[4:, 'D'] * fixed_d4 + df.loc[4:, 'C'] * fixed_c4) * df.loc[4:, 'B'] # 输出计算后的前10行确认结果 print(df.head(10)) # 将结果保存为新的Excel文件 df.to_excel("ICRU_计算完成.xlsx", index=False)
注意事项
- 如果你的Excel列有实际业务名称,不是用A、B、C、D作为列名,请把代码中的
'B'/'C'/'D'替换为你实际的列名 - 如果你的材料起始行不是Excel第5行,调整
df.loc[4:, 'H']里的起始索引即可(索引=Excel行号-1) - 该方法为批量向量化计算,哪怕数据有上百上千行也可以快速完成运算
内容的提问来源于stack exchange,提问作者Hana T. A
相关产品推荐
相关产品推荐

