Everyone involved in exploratory data analysis has a workflow that they prefer to follow. Usually, these workflows involve some combination of inspection of raw data, calculation of summary statistics, creation of visualizations, and data cleaning, usually applied iteratively. In Python, Jupyter and pandas are the de facto standard tools for this task—however, the default interfaces of these tools often provide for an inefficient data exploration experience. The rendering of tabular data as formatted text makes it challenging to explore efficiently, and common data cleaning and summarization tasks require tedious, error-prone manual code entry.
Buckaroo is a Jupyter-based wrapper around pandas dataframes that provides a streamlined, enhanced exploratory data analysis experience. In addition to a significantly improved interface, its built-in capabilities for creating useful summary stats, performing data cleaning, and displaying dataframes can accelerate many workflow steps without further customization. In situations where the defaults aren’t suitable, Buckaroo can be customized and extended to fit the need. Specific Buckaroo features include:
- A performant table widget based on AG Grid
- Sensible, override-able defaults for data cleaning
- Automatic summary statistic calculations for every column
- Lightweight histograms rendered directly in column headers
- Smart downsampling for faster rendering
- A low code UI with codegen to quickly perform common tasks like
groupby
andfillna
- Interactive extensibility for every feature (summary measures, data cleaning, and more)
This talk demonstrates Buckaroo as a tool, compares Buckaroo workflows to the default Jupyter/pandas flows, illustrates how it can be extended to fit different needs, and reviews the architecture of the project. Come prepared with pain points from your current EDA workflow with pandas & Jupyter! There’s a good chance Paddy’s demonstration will show how Buckaroo can help smooth them out.
Buckaroo @ GitHub: https://github.com/paddymul/buckaroo
Paddy @ GitHub: https://github.com/paddymul
Paddy @ LinkedIn: https://www.linkedin.com/in/paddymullen/
Paddy @ Twitter/X: https://twitter.com/paddy_mullen
October 19, 2023