Not logged in.

Contribution Details

Type Journal Article
Scope Discipline-based scholarship
Title Workflow analysis of data science code in public GitHub repositories
Organization Unit
  • Dhivyabharathi Ramasamy
  • Cristina Sarasua
  • Alberto Bacchelli
  • Abraham Bernstein
Item Subtype Original Work
Refereed Yes
Status Published in final form
  • English
Journal Title Empirical Software Engineering
Publisher Springer
Geographical Reach international
ISSN 1382-3256
Volume 28
Number 7
Page Range 7
Date 2022
Abstract Text Despite the ubiquity of data science, we are far from rigorously understanding how coding in data science is performed. Even though the scientific literature has hinted at the iterative and explorative nature of data science coding, we need further empirical evidence to understand this practice and its workflows in detail. Such understanding is critical to recognise the needs of data scientists and, for instance, inform tooling support. To obtain a deeper understanding of the iterative and explorative nature of data science coding, we analysed 470 Jupyter notebooks publicly available in GitHub repositories. We focused on the extent to which data scientists transition between different types of data science activities, or steps (such as data preprocessing and modelling), as well as the frequency and co-occurrence of such transitions. For our analysis, we developed a dataset with the help of five data science experts, who manually annotated the data science steps for each code cell within the aforementioned 470 notebooks. Using the first-order Markov chain model, we extracted the transitions and analysed the transition probabilities between the different steps. In addition to providing deeper insights into the implementation practices of data science coding, our results provide evidence that the steps in a data science workflow are indeed iterative and reveal specific patterns. We also evaluated the use of the annotated dataset to train machine-learning classifiers to predict the data science step(s) of a given code cell. We investigate the representativeness of the classification by comparing the workflow analysis applied to (a) the predicted data set and (b) the data set labelled by experts, finding an F1-score of about 71% for the 10-class data science step prediction problem.
Free access at DOI
Official URL
Digital Object Identifier 10.1007/s10664-022-10229-z
Other Identification Number merlin-id:22968
PDF File Download from ZORA
Export BibTeX