Python Pulp - 将变量矩阵解输出到 Excel

Python Pulp - Output Variable Matrix Solution to Excel

我正在尝试将其中一个数组变量的解输出到 excel 工作簿中。除了 PULP 中变量的表示而不是解决的值(这就是我所追求的),我无法得到任何其他东西。

我尝试了许多不同的 pandas/numpy 数据框和数组,但没有成功。也尝试使用 excel 编写器库,但没有骰子。

YPER = 30
HE = 24

yearlyhours = []
yearlyhours = [(i,j) for i in range(YPER) for j in range(HE)]

MAHLDIFF = pulp.LpVariable.dicts("MAHLDIFF", (range(YPER), range(HE)), lowBound=0, cat='Continuous')

MAHLDIFFOUTPUT = []
for i,j in yearlyhours:
    var_output = {'MAHLDIFF':MAHLDIFF[i][j]}
    MAHLDIFFOUTPUT.append(var_output)
dfOptResults = pd.DataFrame.from_records(MAHLDIFFOUTPUT)
dfOptResults.to_excel('file.xls')

这是我到目前为止得到的输出,只是完整数组的一个示例:

    MAHLDIFF
0   MAHLDIFF_0_0

这并不是真正关于导出到 Excel,它只是一个关于如何访问 PuLP 中变量值的一般性问题。为此,请使用 <var_name>.value(),例如 MAHLDIFF[i][j].value()

您还可以循环遍历模型中的所有变量,例如:

for v in prob.variables():
    print(v.name, "=", v.varValue)

其中 prob 是保存您的 PuLP 模型的 Python 变量。

你有没有想过https://solverstudio.org/。如果您想使用Excel来管理您的数据。