如何将Pandas MultiIndex Dataframe写入ReportLab表

时间:2016-01-16 17:56:30

标签: python pandas reportlab

我通过内部联接合并了两个Pandas数据框(课程安排和学生评估)。然后我按照教师的说明生成一个.groupby()数据框。最后,我为问题1到4计算.mean()并打印结果。如何将这些结果,多索引,列标题和分析写入ReportLab表以输出到pdf?

merged_df = pd.merge(left=evals_df, right=sched_df, left_on='Course', right_on='Course')
byInstructor_df = merged_df[['Q1', 'Q2', 'Q3', 'Q4']].groupby([merged_df['PRIMARY_INSTRUCTOR_NAME'], 
                        merged_df['COURSE_NUMBER'], merged_df['OFFERING_NUMBER']])
print(byInstructor_df.mean())

使用print的当前输出:

Bird, B                 3302          1               4.38 2.62 4.62 4.62
Grouch, O               2201          2               4.23 2.69 4.00 4.23
                                      3               4.68 3.42 4.42 4.42
                        3303          2               3.80 2.85 3.25 3.65
                        4425          1               4.50 3.50 4.00 4.88  
Monster, C              3312          1               4.52 3.22 4.09 4.22

感谢您提供任何指导。 - 汤姆

1 个答案:

答案 0 :(得分:0)

根据您的需求,您可以:

  • Jupyter notebook中编写代码,DataFrame看起来格式更好,格式化为HTML。还可以选择将笔记本导出为PDF(需要pdflatex)。
  • 使用DataFrame methodto_excel导出到Excel,并在集成之前根据您的需要对其进行格式化。请注意,您也可以导出到CSV(to_csv)以执行相同的操作。
  • 使用to_latex方法生成可以集成到您的乳胶源中的导出。一个完整的例子是here
  • 使用tabulate包生成格式正确的纯文本输出。

希望它有所帮助。