Skip to content Skip to sidebar Skip to footer

How To Add Table Title In Python Preferably With Pandas

I would like to add a table title in the out put. It's relatively easy to do this in r with flextable, you just have to use function set_caption(), is there a similar package in py

Solution 1:

Have you tried this doing this?

df.style.set_caption("Hello World")

Source: Pandas Styling

EDIT:

Here's an alternative way to present your table if you're okay with using matplotlib

import matplotlib.pyplot as plt
import pandas as pd

my_frame = pd.DataFrame(data={'simulation1':[71,4.8,65,4.7],
                              'simulation2':[71,4.8,69,4.7],
                              'simulation3':[70,3.8,68,4.9],
                              'experiment':[70.3,3.5,65,4.4]})
#my_frame Display pandas table

fig = plt.figure(figsize = (8, 2))
ax = fig.add_subplot(111)

ax.table(cellText = my_frame.values,
          rowLabels = my_frame.index,
          colLabels = my_frame.columns,
          loc = "center"
         )
ax.set_title("Top 10 Fields of Research by Aggregated Funding Amount")

ax.axis("off");

Solution 2:

It appears this does not set the caption 'inplace', like:

df.reset_index(drop=True, inplace=True)

is the same as:

df = df.reset_index(drop=True)

Instead try:

df = df.style.set_caption('Top 10 Fields of Research by Aggregated Funding Amount')

Solution 3:

Try this

df.style.set_table_attributes("style='display:inline'").set_caption('Caption table')

The output, with the title (hi-lighted in yellow) that will be displayed, is shown below

enter image description here

Solution 4:

Try this.

df.style.set_caption('Top 10 Fields of Research by Aggregated Funding Amount')

Post a Comment for "How To Add Table Title In Python Preferably With Pandas"