一个数据科学家需要哪些核心工具包?
云栖号资讯:【点击查看更多行业资讯】
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!
数据科学家的主要作用是将机器学习、统计方法和探索性分析应用到数据中,来提取见解并帮助制定决策。 编程和计算工具的使用对该角色来说必不可少。 实际上,许多人都用这句名言描述该领域:数据科学家比任何软件工程师都更擅长统计科学,也比任何统计学家都更擅长软件工程。
如果你正踏上学习数据科学的旅程,或想要提高现有的技能,那么很有必要了解你所需的工具,以便有效的执行这个角色。
在过去的十年中,用于数据科学的Python逐渐流行起来,目前是该领域从业人员最流行的编程语言。在下面的文章中,作者将概述数据科学家使用的核心工具,这些工具主要侧重于基于Python的工具。
1、NumPy
NumPy是一个功能强大的库,用于使用Python执行数学和科学计算。 你会发现,许多其他数据科学库都将它作为运行的依赖项,因为它是基础科学软件包之一。
该工具以N维数组对象的形式与数据交互。 它提供了用于处理数组、执行数组运算、基本统计信息和常见的线性代数计算(例如叉和点积运算)的工具。
2、Pandas
Pandas库简化了Python中数据的操作和分析。 Pandas使用两个基本数据结构。 它们是Series(一个一维标记的数组)和一个DataFrame(一个二维标记的数据结构)。Pandas软件包具有多种工具,可以从各种来源读取数据,包括CSV文件和关系数据库。
一旦数据可以作为这些数据结构之一,Pandas会提供一系列非常简单的功能,用于清理、转换和分析数据。 这些工具包括处理丢失数据的内置工具、简单的绘图功能和类似Excel的数据透视表。
3、SciPy
SciPy是另一个核心科学计算Python库。 该库是为了与NumPy数组进行交互而构建的,并且依赖于NumPy提供的许多功能。 但是,尽管要使用这个包,你需要同时安装和导入NumPy,无需直接导入功能,因为该功能自动可用。
Scipy有效地建立在NumPy中可用的数学功能上。 在NumPy提供非常快速的数组操作的地方,SciPy可以处理这些数组并启用高级数学和科学计算的应用。
4、Scikit-learn
Scikit-learn是一个用户友好、全面而强大的机器学习库。 它包含将大多数机器学习技术应用于数据的功能,并且为每种功能都提供一致的用户界面。
该库还提供了用于数据清理、数据预处理和模型验证的工具。 它最强大的功能之一是机器学习管道的概念。 这些管道使机器学习中的各个步骤(例如预处理、训练等)能够链接到一个对象中。
5、Keras
Keras是Python API,旨在提供一个简单的接口来处理神经网络。像Tensorflow这样的流行深度学习库因不够友好而臭名昭著。 Keras位于这些框架之上,提供了一种与之交互的友好方式。
Keras支持卷积和循环网络,提供对多后端的支持,并且可以在CPU和GPU上运行。
6、Matplotlib
Matplotlib是Python中基本的绘图库之一。 许多其他流行的绘图库都依赖于Matplotlib API,包括Pandas绘图功能和Seaborn。
Matplotlib是一个非常丰富的绘图库,并包含用于创建各种图表和可视化效果的功能。 此外,它还包含创建动画和交互式图表的功能。
7、Jupyter notebooks
Jupyter notebooks是一个交互式Python编程接口。 在notebook环境中编写Python的好处在于,它允许你直接在程序中轻松呈现可视化、数据集和数据摘要。
这些notebooks也是共享数据科学工作的理想工具,因为它们可以通过直接在代码和可视化中包含标记文本来进行高度注释。
8、Python IDE
Jupyter notebooks是一个编写数据科学代码的有用地方。然而,在许多情况下,需要将代码写入可重用模块中。 如果你正在编写代码来将机器学习模型投入生产,则尤其需要如此。
在这些情况下,集成开发环境(IDE)非常有用,因为它们提供了许多有用的功能,例如集成的Python样式指南、单元测试和版本控制。 作者本人也使用PyCharm,但还有许多其他可用的开发工具。
9、Github
Github是一个非常流行的版本控制平台。 数据科学的基本原则之一是,代码和结果应该由你自己在将来的某个时间点或由其他人再现。 版本控制提供了一种机制,可以在线跟踪和记录对工作的更改。
此外,Github支持在项目上进行安全形式的协作。 这是通过一个人复制一个分支(实际上是项目的一个副本),在本地进行更改,然后将其上传以供审核,然后再将其集成到项目中来实现的。
本文简要介绍了数据科学工作的核心工具包,感谢你的阅读,希望这篇文章对你有用,欢迎评论区和我们讨论。
【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/zhibo立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK
原文发布时间:2020-03-30
本文作者:Rebecca Vickery
本文来自:“CSDN云计算”,了解相关信息可以关注“CSDN云计算”

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
物联网络管理平台,网络管理涵盖几种类型?
云栖号快速入门:【点击查看更多云产品快速入门】不知道怎么入门?这里分分钟解决新手入门等基础问题,可快速完成产品配置操作! 网络管理服务涵盖三种类型:网关管理、中继管理、入网开通,用于查看、编辑、销毁网关配置等。 网关管理 添加网关 1.登录物联网络管理平台控制台。2.左侧导航栏选择网络管理>网关管理,在网关列表页签,单击页面右上角添加网关,如下图所示。 3.在添加网关页面配置信息,如下图所示。 具体配置参数如下表所示,其中GwEUI和PIN Code 通常以标签贴在网关外壳,或是在设备密钥的文本里。 网关添加成功后,便可看到网关列表显示,如下图所示。 网关详情 1.在网关列表下,单击网关操作栏下的查看, 便可查看网关的详细信息。 2.在基础信息页签,会呈现网关的“基础信息”与在地图上呈现该网关位置。 3.在上行数据、下行数据、和无效数据页签,可以查看当台网关的数据流量详情。 中继管理 此页面可管理网络的中继器设备,与网关设备同属于网元单位,在某些讯号不佳的场景,可选择添加搭载电池的中继设备,补充网络覆盖范围。以下是添加中继的详细操作步骤。 1.登录物联网络管理平台控制台。2.在左...
- 下一篇
Gradle 6 Junit 5 测试错误
在使用 Gradle 进行 build 的时候运行测试,提示 build 不能完成,测试不能进行。 错误信息: Caused by: org.junit.platform.commons.PreconditionViolationException: Cannot create Launcher without at least one TestEngine; consider adding an engine implementation JAR to the classpathorg.gradle.api.internal.tasks.testing.TestSuiteExecutionException: Could not complete execution for Gradle Test Executor 19. at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:63) at java.base/jdk.internal.ref...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2整合Thymeleaf,官方推荐html解决方案