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

如何在Linux环境下将Excel公式而非计算值导入pandas DataFrame

解决方法

方法1:使用pandas内置参数直接读取(推荐)

pandas 1.3.0及以上版本支持通过engine_kwargs参数向底层的openpyxl引擎传递配置,直接读取保留公式的内容:

import pandas as pd

df = pd.read_excel(
    "test.xlsx",
    engine="openpyxl",
    engine_kwargs={"data_only": False}
)

读取后得到的DataFrame就会保留单元格中的原始公式,而非计算后的值。

方法2:手动读取openpyxl内容构造DataFrame

如果你的pandas版本较低不支持engine_kwargs参数,可以手动读取工作表内容后构造DataFrame:

import pandas as pd
from openpyxl import load_workbook

# 加载工作簿,指定保留公式
wb = load_workbook("test.xlsx", data_only=False)
ws = wb.active

# 读取所有单元格内容
all_rows = []
for row in ws.iter_rows(values_only=True):
    all_rows.append(list(row))

# 第一行作为表头,剩余内容作为数据构造DataFrame
df = pd.DataFrame(all_rows[1:], columns=all_rows[0])

如果不需要将第一行设为表头,直接使用df = pd.DataFrame(all_rows)即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 22:06:03