数据科学有一个很大的优点是,数据科学家使用的许多先进的工具都是免费的。事实上,业内免费工具的数量已经非常之大,有时甚至会让人头疼,不知该如何选择。为了帮助大家确定自己该选择哪些工具,这里列出了用于数据处理的五个值得了解的免费软件工具。
Anaconda Distribution
Python之所以成为数据科学领域的一个伟大工具,是因为有大量开发人员构建了基于Python的数据科学库。对于使用Python完成工作的数据科学家来说,诸如NumPy、SciPy、panda、scikit-learn等库是必不可少的。不幸的是,即使对于经验最丰富的开发者来说,处理所有这些Python库也是一个挑战。它们可能很难安装,而且许多都依赖于Python之外的某个软件。
Anaconda是一个免费的Python发行版和包管理器,它解决了这个问题。Anaconda Python发行版预先安装了超过200个流行的数据科学Python库,并且它的包管理器提供了一种简单的方式来安装超过2000个额外的包,且无需担心软件依赖关系。Anaconda还附带许多其他流行的工具,包括Jupyter Notebook——它使数据科学家能够在基于浏览器的环境中交互工作。
RStudio & RStudio Server
RStudio是一个集成开发环境(IDE),是为在R语言中执行交互式数据分析和更正式的编程而定制的。RStudio为交互式工作环境提供了一个很好的平衡,它支持R控制台和数据可视化面板,以及功能齐全的文本编辑器,该文本编辑器可以实现语法高亮显示和代码补全。
一个不太为人所知的工具是RStudio Server,它是RStudio IDE的一个功能完整的版本,运行在服务器上,可以通过浏览器访问。这意味着您可以通过网络连接从任何地方访问RStudio IDE,并将计算转移到专用资源上。这使得数据科学家可以处理潜在的敏感数据,而不必将其下载到个人设备上,也可以在任何设备上用R执行复杂且计算量大的工作。
OpenRefine
OpenRefine最初由谷歌的工程师开发,是一种用于数据清理的开源工具。它允许从业者读取混乱或损坏的数据,执行批量转换以修复错误,并生成干净的数据,并以一系列有用的格式导出结果。
OpenRefine的优质特性之一是,它能够跟踪在数据集上执行的每个操作,使步骤跟踪和工作流的重新创建变得非常容易。当您有许多文件都具有相同的数据完整性问题,并且需要相同的转换时,这尤其有用。OpenRefine允许导出对头一个数据文件所做的更改序列,并将其应用于第二个数据文件,从而节省重复工作的时间并降低人为操作出现错误的可能性。
OpenRefine还提供了非常强大的工具来处理凌乱的文本字段。例如,如果数据集中有一列的条目是“Vancouver, BC”。、“VANCOUVER BC”和“vancouver b.c.”, OpenRefine的文本聚类工具就会识别出它们可能是相同的,并执行批量转换,以便对每个事件应用单个标签。
Apache Airflow
在大多数组织中,数据并不是存留在一个地方,也不是只使用一种方法访问的。通常有多个数据库、数据存储系统、API和其他进程,来跟踪整个组织中的数据。数据团队的主要工作是将数据从存留的位置移动到需要进行分析的位置,并根据需要进行转换。理想情况下,这项工作应该尽可能自动化,Apache Airflow可以完成此事。
Airflow是Airbnb的工程师为内部使用开发的,2015年开源。它是一个映射、自动化和调度复杂工作流的工具,这些工作流涉及了许多具有相互依赖关系的不同系统。它可以监控这些流程是否成功,并在出现问题时提醒工程师。Airflow还有一个基于Web的用户界面,它将工作流表示为一个小作业网络,这样依赖关系就可以很容易地实现可视化。
H2O
随着机器学习技术的成熟,一些基本算法得到了广泛的应用。广义线性模型、基于树的模型和神经网络都已成为机器学习工具包中的基本元素。然而,尽管R和Python中那些算法的许多实现对于原型设计和概念验证非常有用,但它们并不能很好地扩展到生产环境中。
H2O是一个开源工具,它提供了流行的统计和机器学习算法的高效和可扩展实现。它可以连接到许多不同类型的数据存储系统,可以在包括从笔记本电脑到大型计算集群的任何设备上运行。它拥有强大和灵活的工具,来构建模型原型并进行微调,而且在H2O中构建的模型非常易于部署到生产环境中。最重要的是,H2O有Python和R的API,因此数据科学家可以无缝地将其与现有环境集成。
目前数据科学领域的软件工具数不胜数,在项目启动时,选择足够优秀的免费工具来加速和优化数据流程是一个不错的选择。
原文来源:BrainStation