Unravel: A Fluent Code Explorer for Data Wrangling
Authors
Data scientists have adopted a popular design pattern in programming called the fluent interface for composing data wrangling code. The fluent interface works by combining multiple transformations on a data table---or dataframes---with a single chain of expressions, which produces an output. Although fluent code promotes legibility, the intermediate dataframes are lost, forcing data scientists to unravel the chain through tedious code edits and re-execution. Existing tools for data scientists do not allow easy exploration or support understanding of fluent code. To address this gap, we designed a tool called Unravel that enables structural edits via drag-and-drop and toggle switch interactions to help data scientists explore and understand fluent code. Data scientists can apply simple structural edits via drag-and-drop and toggle switch interactions to reorder and (un)comment lines. To help data scientists understand fluent code, Unravel provides function summaries and always-on visualizations highlighting important changes to a dataframe. We discuss the design motivations behind Unravel and how it helps understand and explore fluent code. In a first-use study with 14 data scientists, we found that Unravel facilitated diverse activities such as validating assumptions about the code or data, exploring alternatives, and revealing function behavior.
Research Questions / Practical Problems
Question signals indexed for this paper.
- 83%
Comparing Apples and Oranges: Taxonomy and Design of Pairwise Comparisons within Tabular Data
CHI '19· Interactive Data Visualization +2
- 83%
Wrex: A Unified Programming-by-Example Interaction for Synthesizing Readable Code for Data Scientists
CHI '20· Interactive Data Visualization +2
- 83%
Diff in the Loop: Supporting Data Comparison in Exploratory Data Analysis
CHI '22· Interactive Data Visualization +2
- 83%
HiLT: A Library for Generating Human-in-the-Loop Data Transformation GUIs
UIST '25· Interactive Data Visualization +1
- 80%
Integrated Development Environment with Interactive Scatter Plot for Examining Statistical Modeling
CHI '20· Interactive Data Visualization +1
- 80%
NBSearch: Semantic Search and Visual Exploration of Computational Notebooks
CHI '21· Interactive Data Visualization +1
- 80%
ComputableViz: Mathematical Operators as a Formalism for Visualization Processing and Analysis
CHI '22· Interactive Data Visualization +1
- 80%
multiverse: Multiplexing Alternative Data Analyses in R Notebooks
CHI '23· Interactive Data Visualization +1
- 80%
Xavier: Toward Better Coding Assistance in Authoring Tabular Data Wrangling Scripts
CHI '25· Interactive Data Visualization +1
- 67%
Towards Effective Foraging by Data Scientists to Find Past Analysis Choices
CHI '19· Interactive Data Visualization +1
Based on Jaccard similarity of research subtopics & professions (≥60%)