arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2203.16653cs.SE
收藏

Python编译器笔记本的错误识别策略

Error Identification Strategies for Python Jupyter Notebooks

Derek Robinson, Neil A. Ernst, Enrique Larios Vargas, Margaret-Anne D. Storey

摘要:

计算型笔记本--如Quixyter或Colab --结合了文本和数据分析代码。它们在数据科学和探索性数据分析的世界中无处不在。由于这些笔记本提供了与传统IDE驱动编程不同的编程范式,因此计算笔记本中的调试也可能不同。更具体地说,由于创建笔记本混合了领域知识、统计分析和编程,因此笔记本用户在这些不同形式中查找和修复错误的方式可能会有所不同。在本文中,我们提出了一个探索性的,观察性的研究,关于Python的笔记本用户如何发现和理解笔记本中的潜在错误。通过研究R notebook用户的错误识别策略的研究设计的概念复制,我们向用户提供了预先填充了常见笔记本错误的Python PythonYter笔记本-错误根源于统计数据分析,领域概念知识或编程。然后,我们分析了研究参与者用来发现这些错误的策略,并确定了每种策略在识别错误方面的成功程度。我们的研究结果表明,虽然笔记本电脑的编程环境是不同的环境用于传统的编程,调试策略仍然非常相似。我们希望本文中提出的见解能够帮助笔记本工具设计者和教育工作者做出改变,以改善数据科学家如何更容易地发现他们编写的笔记本中的错误。

英文摘要:

Computational notebooks -- such as Jupyter or Colab -- combine text and data analysis code. They have become ubiquitous in the world of data science and exploratory data analysis. Since these notebooks present a different programming paradigm than conventional IDE-driven programming, it is plausible that debugging in computational notebooks might also be different. More specifically, since creating notebooks blends domain knowledge, statistical analysis, and programming, the ways in which notebook users find and fix errors in these different forms might be different. In this paper, we present an exploratory, observational study on how Python Jupyter notebook users find and understand potential errors in notebooks. Through a conceptual replication of study design investigating the error identification strategies of R notebook users, we presented users with Python Jupyter notebooks pre-populated with common notebook errors -- errors rooted in either the statistical data analysis, the knowledge of domain concepts, or in the programming. We then analyzed the strategies our study participants used to find these errors and determined how successful each strategy was at identifying errors. Our findings indicate that while the notebook programming environment is different from the environments used for traditional programming, debugging strategies remain quite similar. It is our hope that the insights presented in this paper will help both notebook tool designers and educators make changes to improve how data scientists discover errors more easily in the notebooks they write.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑