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

如何将Excel数据导入Python?附CPLEX OPL导入示例

使用Pandas实现CPLEX OPL同款Excel数据导入

下面是对应你OPL代码的Pandas实现,通过read_excel方法精准读取Excel指定区域的数据:

步骤1:导入依赖库

import pandas as pd

步骤2:读取Excel文件并逐个加载数据

# 定义Excel文件路径
file_path = "DATA.xlsx"

# 对应OPL中的v from SheetRead(file, "Set1!C2:F4")
v = pd.read_excel(file_path, sheet_name="Set1", usecols="C:F", skiprows=1, nrows=3)

# 对应f from SheetRead(file, "Set1!C7:F9")
f = pd.read_excel(file_path, sheet_name="Set1", usecols="C:F", skiprows=6, nrows=3)

# 对应u1 from SheetRead(file, "Set1!C13:F16")
u1 = pd.read_excel(file_path, sheet_name="Set1", usecols="C:F", skiprows=12, nrows=4)

# 对应u2 from SheetRead(file, "Set1!J13:M16")
u2 = pd.read_excel(file_path, sheet_name="Set1", usecols="J:M", skiprows=12, nrows=4)

# 对应u3 from SheetRead(file, "Set1!P13:S16")
u3 = pd.read_excel(file_path, sheet_name="Set1", usecols="P:S", skiprows=12, nrows=4)

# 对应C from SheetRead(file, "Set1!C21:F23")
C = pd.read_excel(file_path, sheet_name="Set1", usecols="C:F", skiprows=20, nrows=3)

# 对应MOQ from SheetRead(file, "Set1!C27:F29")
MOQ = pd.read_excel(file_path, sheet_name="Set1", usecols="C:F", skiprows=26, nrows=3)

# 对应D from SheetRead(file, "Set1!B42:D42")
D = pd.read_excel(file_path, sheet_name="Set1", usecols="B:D", skiprows=41, nrows=1)

# 对应strat from SheetRead(file, "Set1!C33:F35")
strat = pd.read_excel(file_path, sheet_name="Set1", usecols="C:F", skiprows=32, nrows=3)

补充说明

  • usecols:指定读取的列范围,和Excel中的列标识一致
  • skiprows:跳过的行数(Excel行号-1,因为Pandas从0开始计数)
  • nrows:读取的行数(目标区域的结束行号 - 起始行号 + 1)
  • 如果需要将DataFrame转换为CPLEX可用的数组/矩阵格式,可以使用.to_numpy()方法,比如v_array = v.to_numpy()

内容的提问来源于stack exchange,提问作者Trí Vũ

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 17:27:22