pandas - Show DataFrame as table in iPython Notebook

ID : 10013

viewed : 44

Tags : pandasprintingipython-notebookjupyter-notebookdisplaypandas

Top 5 Answer for pandas - Show DataFrame as table in iPython Notebook

vote vote


You'll need to use the HTML() or display() functions from IPython's display module:

from IPython.display import display, HTML  # Assuming that dataframes df1 and df2 are already defined: print "Dataframe 1:" display(df1) print "Dataframe 2:" display(HTML(df2.to_html())) 

Note that if you just print df1.to_html() you'll get the raw, unrendered HTML.

You can also import from IPython.core.display with the same effect

vote vote


from IPython.display import display display(df)  # OR print df.to_html() 
vote vote


This answer is based on the 2nd tip from this blog post: 28 Jupyter Notebook tips, tricks and shortcuts

You can add the following code to the top of your notebook

from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = "all" 

This tells Jupyter to print the results for any variable or statement on it’s own line. So you can then execute a cell solely containing

df1 df2 

and it will "print out the beautiful tables for both datasets".

vote vote


I prefer not messing with HTML and use as much as native infrastructure as possible. You can use Output widget with Hbox or VBox:

import ipywidgets as widgets from IPython import display import pandas as pd import numpy as np  # sample data df1 = pd.DataFrame(np.random.randn(8, 3)) df2 = pd.DataFrame(np.random.randn(8, 3))  # create output widgets widget1 = widgets.Output() widget2 = widgets.Output()  # render in output widgets with widget1:     display.display(df1) with widget2:     display.display(df2)  # create HBox hbox = widgets.HBox([widget1, widget2])  # render hbox hbox 

This outputs:

enter image description here

vote vote


In order to show the DataFrame in Jupyter Notebook just type:


for example:


Top 3 video Explaining pandas - Show DataFrame as table in iPython Notebook