如何在Excel中获得格式良好的lmfit fit_report?

时间:2017-11-07 16:33:10

标签: python excel

我正在使用lmfit将我的数据拟合到模型方程式中。

我正在使用pandas.DataFrame.to_excel将初始猜测,参数提示和最佳值写入Excel电子表格,以备日后使用。

我也正在将拟合报告写入电子表格,如下所示[“results”是lmfit的model.fit()的输出,而“bit_id”是我试图拟合其数据的实验单位。 ]

fit_report_string = results.fit_report()
temp_dict5 = {'fit_report': fit_report_string}
temp_df5 = pd.DataFrame(data=temp_dict5, index=np.array([0]))
temp_df5.to_excel(writer, sheet_name=bit_id + ' fit_report')

我在电子表格中得到了适合的报告,但它都进入了一个单元格,这使得它很难阅读。

我想要一些格式很好的东西,类似于我打印适合报告时得到的东西。

我不知道究竟是怎么发生的 - 整个拟合报告可以在一个大小合适的单元格中,或者拟合报告的每一行都可以在一个单独的单元格中。

我也不知道这是用大熊猫还是其他东西来完成的。 (虽然如果我使用除熊猫之外的其他东西,我怀疑我需要为其他模块制作一个Excel编写器。)

我发现如果我双击包含拟合报告的电子表格单元格,然后将列宽更改为42并将行高更改为255,我会得到格式良好的报告,但我无法弄清楚如何以编程方式做到这一点。

建议?

澄清:我可以使用openpyxl来更改单元格的宽度和高度,但我无法弄清楚如何以编程方式模拟双击编辑单元格的操作。

1 个答案:

答案 0 :(得分:0)

pybroom项目可能足以满足您的需求。见https://github.com/tritemio/pybroom

一般来说,我认为很多其他人会对使用Dataframe和/或类似电子表格的布局更好地排序和查看拟合结果感兴趣。可能值得尝试将其添加到lmfit