将纸浆线性优化结果导出到Excel



我是Python和PuLP包的新手,并且在我的Jupyter Notebook的终端中有一些结果,如果可能的话,我想导出到Excel。我最初没有创建数据框架-但想知道是否有可能在打印后为结果创建数据框架。我的输出如下:

Service_('CZe_0004',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0004',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0004',_'DC_PA_CHAMBERSBURG') = 0.0
Service_('CZe_0004',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0004',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0004',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0004',_'MFC_SC_GREER') = 0.0
Service_('CZe_0005',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0005',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0005',_'DC_PA_CHAMBERSBURG') = 0.0
Service_('CZe_0005',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0005',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0005',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0005',_'MFC_SC_GREER') = 0.0
Service_('CZe_0006',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0006',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0006',_'DC_PA_CHAMBERSBURG') = 0.0
Service_('CZe_0006',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0006',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0006',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0006',_'MFC_SC_GREER') = 0.0
Service_('CZe_0007',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0007',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0007',_'DC_PA_CHAMBERSBURG') = 0.0
Service_('CZe_0007',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0007',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0007',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0007',_'MFC_SC_GREER') = 0.0
Service_('CZe_0008',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0008',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0008',_'DC_PA_CHAMBERSBURG') = 0.0
Service_('CZe_0008',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0008',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0008',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0008',_'MFC_SC_GREER') = 0.0
Service_('CZe_0009',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0009',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0009',_'DC_PA_CHAMBERSBURG') = 0.0
Service_('CZe_0009',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0009',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0009',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0009',_'MFC_SC_GREER') = 0.0
Service_('CZe_0010',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0010',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0010',_'DC_PA_CHAMBERSBURG') = 87.14
Service_('CZe_0010',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0010',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0010',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0010',_'MFC_SC_GREER') = 0.0
Service_('CZe_0011',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0011',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0011',_'DC_PA_CHAMBERSBURG') = 0.0
Service_('CZe_0011',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0011',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0011',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0011',_'MFC_SC_GREER') = 0.0
Service_('CZe_0012',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0012',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0012',_'DC_PA_CHAMBERSBURG') = 0.0
Service_('CZe_0012',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0012',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0012',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0012',_'MFC_SC_GREER') = 0.0
Service_('CZe_0013',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0013',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0013',_'DC_PA_CHAMBERSBURG') = 0.0
Service_('CZe_0013',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0013',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0013',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0013',_'MFC_SC_GREER') = 0.0
Service_('CZe_0014',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0014',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0014',_'DC_PA_CHAMBERSBURG') = 0.0
Service_('CZe_0014',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0014',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0014',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0014',_'MFC_SC_GREER') = 0.0
Service_('CZe_0015',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0015',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0015',_'DC_PA_CHAMBERSBURG') = 94.76
Service_('CZe_0015',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0015',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0015',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0015',_'MFC_SC_GREER') = 0.0
Service_('CZe_0016',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0016',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0016',_'DC_PA_CHAMBERSBURG') = 0.0
Service_('CZe_0016',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0016',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0016',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0016',_'MFC_SC_GREER') = 0.0
Service_('CZe_0017',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0017',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0017',_'DC_PA_CHAMBERSBURG') = 84.73
Service_('CZe_0017',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0017',_'MFC_FL_JACKSONVILLE') = 0.0
Service_('CZe_0017',_'MFC_IL_ROMEOVILLE') = 0.0
Service_('CZe_0017',_'MFC_SC_GREER') = 0.0
Service_('CZe_0018',_'DC_CA_FRESNO') = 0.0
Service_('CZe_0018',_'DC_IN_GREENWOOD') = 0.0
Service_('CZe_0018',_'DC_PA_CHAMBERSBURG') = 142.46
Service_('CZe_0018',_'DC_TX_DALLAS') = 0.0
Service_('CZe_0018',_'MFC_FL_JACKSONVILLE') = 0.0

我相信我已经饱和了我的搜索尝试,只是不知道该尝试什么。

欢迎来到本站。

您不需要使用数据帧来完成此操作,除非您对数据帧有其他用途。我认为将结果写入数据文件并使用它同样容易。

我建议你写自己的"CSV"文件(逗号分隔值)。它是一种标准格式,相当普遍。Excel可以很好地读取它们,并且更容易将它们读回python。

这是一个小脚本,使一个假的pulp问题,并写入值到。csv。

如果你以前没有在Excel中这样做过,它会打开。csv文件,但是当你去保存它时,它会给你一些选项,要么重新保存为。csv文件,并带有一些关于格式的可怕警告,要么只是保存为新的。xlsx文件。你选择。

import pulp
sources = ['cze1', 'cze2', 'cze3']
destinations = ['Jax', 'Fresno', 'Dallas']
prob = pulp.LpProblem('example')
service = pulp.LpVariable.dicts('service', [(s, d) for s in sources for d in destinations])
# assign some bogus values (simulate solving...)
for (s, d) in service.keys():
    service[s,d].setInitialValue(1.5)
# write to a csv file
output_filename = 'output.csv'
# use a context manager to open/close the file...
with open(output_filename, 'w') as fout:
    for (s, d) in service.keys():
        line = ','.join([s, d, str(service[s,d].value())])   # make a string out of the elements, separated by commas
        fout.write(line)    # write the line to the file
        fout.write('n')    # add a newline character

最新更新