2019 年 pandas 用户调查

pandas 最近进行了一项用户调查,以帮助指导未来的发展。感谢所有参与的人!这篇文章介绍了主要结果。

此分析和原始数据可以在 GitHub 上找到,并在 Binder 上运行

Binder

我们在 2019 年夏季进行的调查中,在 15 天内获得了大约 1250 份回复。

关于受访者

在 pandas 经验和使用频率方面,有相当多的代表性,尽管大多数受访者都比较有经验。

png

png

我们包含了一些在 Python 开发者调查 中也问过的问题,以便我们可以将 Pandas 的人群与 Python 的人群进行比较。

90% 的受访者使用 Python 作为主要语言(相比之下,PSF 调查中为 84%)。

Yes    90.67%
No      9.33%
Name: Is Python your main language?, dtype: object

Windows 用户得到了很好的体现(参见 Steve Dower 的演讲)。

Linux      61.57%
Windows    60.21%
MacOS      42.75%
Name: What Operating Systems do you use?, dtype: object

对于环境隔离,conda 最受欢迎。

png

大多数受访者只使用 Python 3。

3        92.39%
2 & 3     6.80%
2         0.81%
Name: Python 2 or 3?, dtype: object

Pandas API

对于开源项目来说,了解哪些功能实际上被使用是很难的。我们问了一些问题来了解一下。

CSV 和 Excel 是(无论好坏)最流行的格式。

png

为了准备可能对 pandas 内部进行重构,我们想了解一下宽(100 列或更多)DataFrame 的普遍程度。

png

Pandas 正在慢慢增加新的扩展类型。分类是最受欢迎的,可空整数类型已经几乎与带时区的日期时间一样受欢迎。

png

更多更好的示例似乎是一个优先级很高的开发项目。pandas 最近获得了 NumFOCUS 资助以改进我们的文档,我们正在使用它来编写教程式文档,这应该有助于满足这一需求。

png

我们还询问了一些具体且经常被请求的功能。

png

其中,最突出的就是“扩展”到大型数据集。一些观察结果

  1. 也许 pandas 的文档应该更好地宣传提供可扩展 DataFrame 的库(如 Daskvaexmodin
  2. 内存效率(也许来自本机字符串数据类型、更少的内部复制等)是一个有价值的目标。

接下来,最关键的改进是整数缺失值。这些实际上是在 Pandas 0.24 中添加的,但它们不是默认值,并且与其他 pandas API 仍然存在一些不兼容性。

Pandas 比 NumPy 等库更不保守。我们正在接近 1.0 版本,但在开发过程中,我们进行了许多弃用操作,并进行了一些彻底的 API 更改。幸运的是,大多数人对这种权衡都能接受。

Yes    94.89%
No      5.11%
Name: Is Pandas stable enough for you?, dtype: object

人们普遍认为(许多 pandas 维护者也持这种观点)pandas API 太大了。为了衡量这一点,我们询问用户是否认为 pandas 的 API 太大、太小还是刚刚好。

png

最后,我们询问了用户对该库的整体满意度,从 1(很不满意)到 5(非常满意)。

png

大多数人非常满意。平均评分为 4.39。我期待着随着时间的推移跟踪这个数字。

如果您正在分析原始数据,请务必与我们分享结果 @pandas_dev