Bamboolib: GUI for Pandas DataFrames

Amin Nazerzadeh
5 min readSep 8, 2020

Analyzing and visualizing the data is very important and time consuming. We write different types of line of codes, python libraries, and functions to visualize and get familiar with the dataset. The reason we do that is to get familiar with our data and see what it is all about or what is trying to say. In order to do that we need to have some coding knowledge and experience to work with the data and not everyone has that, so what they do? They use Bamboolib.

Bamboolib is very easy to use, and it’s used by many people who don’t have a technical background or people who want to save time coding. It is used in more than 100 companies such as Spotify, P&G, mediquest, InfiniGlobe, Novome Biotechnologies, moodagent, and many more. Bamboolib has a lot of features one of its feature is it enables data analysts to collaborate with data scientists within Jupyter and to share the working results as reproducible code.

Bamboolib is a GUI for pandas DataFrames that enables anyone to work with Python in Jupyter Notebook or JupyterLab. We can do data preparatin, data transformation, data visualization, data exploration. Lets start to explore Bamboolib :

Here are the steps to install Bamboolib:

Install Bamboolib for Jupyter Notebook or Jupyter Lab by running the code below in your terminal (or Anaconda Prompt for Windows):

pip install bamboolib

# Jupyter Notebook extensions
python -m bamboolib install_nbextensions

# JupyterLab extensions
python -m bamboolib install_labextensions
# If you get an Access is denied ERROR, please install Bamboolib with:
pip install --upgrade bamboolib --user
Then, install the extensions again

After you have installed Bamboolib, you can test Bamboolib. First, start Jupyter Notebook or Jupyter Lab, then type:

jupyter notebook

If you are already running Jupyter, please restart the Jupyter Kernel and refresh your browser page (needed for the extensions to work).

Afterwards, create a new notebook .pynb file or use an existing one. Then, enter the following code in the first cell in a Jupyter Notebook / Lab code cell and run it.

import bamboolib as bam
import pandas as pd
df = pd.read_csv(bam.titanic_csv)
df

After clicking on the button displayed above the dataframe, you should see a GUI.

Also, the titanic dataset comes pre-installed with Bamboolib

In order to use Bamboolib, you need to sign up and get a license key. At this moment Bamboolib you can request a free trial and try it for 14 days. For pricing, you need to contact their sales department. They have plans for individuals, teams, and enterprises.

After you installed Bamboolib, there are a lot of things you can do with it. It saves you time from writing codes, functions, and libraries. Here are some features that Bamboolib offers.

You can get an overview or glimpse to see what information your columns have in the dataset. This can be unique values, missing values, your data shape, data type, and more.

Missing data? If your has a lot of missing data you can drop it easily. We can choose and drop our column of our choice that has a lot of missing value or columns that we don’t want to work with. Also, another cool feature is it will show what code is running, so you get the pandas code automatically. This can be helpful for people who want to learn and see what codes are being used for this type of execution.

Filtering is another useful and popular tool in data cleaning. You can add columns and also add multiple conditions to it.

Sorting is also very useful when you want to sort the elements of a list in a specific ascending or descending order. We can easily do this in Bamboolib as shown below.

Another thing I like about this program is the tools and visualization to understand our column or data. For example, you can visualize each column to see if it is skewed to the right or left, how many missing values it has, renaming the column, and many more tools that can help you work your data.

Bamboolib has several tools for visualization such as heatmap, bar plot, histogram, scatter plot, box plot and many more. For example, we can easily use heatmap to find any correlation between the columns. We can use bar plot to add different properties, or we can use histogram to see that as RAM increases, the price range increases.

Another great feature that Bamboolib has it’s called predictors. Bamboolib enables you to quickly calculate the predictor scores for a given target column using bam.predictors(df, "target_name"). The bottom chart is visualizing predicted patterns. We can visualize them in a heatmap for multiple different targets. This enables us to detect novel relationships

There are a lot more features in Bamboolib that I didn’t cover such as features in predictors like decision tree or score metrics, also different types of visualization and data cleaning, but you can explore it using the trial version for 14 days. As you saw there is no need for coding experience and it is very simple to use. Even people who can code can use Bamboolib because it is faster and easier than writing the code themselves.

--

--