前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >五大难懂的Python库,每位数据科学家都应了解

五大难懂的Python库,每位数据科学家都应了解

作者头像
人工智能小咖
修改于 2020-08-03 02:58:49
修改于 2020-08-03 02:58:49
5420
举报
文章被收录于专栏:人工智能小咖人工智能小咖

1. Scrapy

每位数据科学家的项目都是从处理数据开始的,而互联网则是最大、最丰富、最易访问的数据库。但可惜的是,数据科学家除了能通过pd.read_html函数来获取数据外,一旦涉及从那些数据结构复杂的网站上抓取数据时,他们大多都会毫无头绪。Web爬虫常用于分析网站结构和存储提取信息,但相较于重新构建网页爬虫,Scrapy使这个过程变得更加容易。

Scrapy用户界面非常简洁,但除此以外,效率高是其最大优势。Scrapy可以异步发送、调度和处理网站请求,也就是说:它在花时间处理和完成一个请求的同时,也可以发送另一个请求。Scrapy通过同时向一个网站发送多个请求的方法,使用非常快的爬行,以最高效的方式迭代网站内容。

除上述优点外,Scrapy还能让数据科学家用不同的格式(如:JSON,CSV或XML)和不同的后端(如:FTP,S3或local)导出存档数据。

2. Pattern

一些成熟完善的网站用来检索数据的方法可能更为具体,在这种情况下用Scrapy编写Web爬虫就有点“大材小用”了。而Pattern是Python中更高级的Web数据挖掘自然语言处理模块。

Pattern不仅能无缝整合谷歌、推特和维基百科三者的数据,而且还能提供一个不太个性化的Web爬虫和HTML DOM解析器。它还采用了词性标注、n-grams搜索、情感分析和WordNet。不论是聚类分析,还是分类处理,又或是网络分析可视化,经Pattern预处理后的文本数据都可用于各种机器学习算法。

从数据检索到预处理,再到建模和可视化,Pattern可以处理数据科学流程中的一切问题,而且它也能在不同的库中快速传输数据。

3. Statsmodels

到底该采用何种统计建模方法?虽然每位数据科学家常对此犹豫不决,但Statsmodels是一个必须了解的Python库。因为它能实现Sci-kit Learn等标准机器学习库中没有的重要算法(如:ANOVA和ARIMA),而它最有价值之处在于其细节化处理和信息化应用。

例如,当数据科学家要用Statsmodels算一个普通最小二乘法时,他所需要的一切信息,不论是有用的度量标准,还是关于系数的详细信息,Statsmodels都能提供。库中实现的其他所有模型也是如此。这些是在Sci-kit learn中无法得到的!

OLS Regression Results

==============================================================================

Dep. Variable:                Lottery   R-squared:                       0.348

Model:                            OLS   Adj. R-squared:                  0.333

Method:                 Least Squares   F-statistic:                     22.20

Date:                Fri, 21 Feb 2020   Prob (F-statistic):           1.90e-08

Time:                        13:59:15   Log-Likelihood:                -379.82

No. Observations:                  86   AIC:                             765.6

Df Residuals:                      83   BIC:                             773.0

Df Model:                           2

Covariance Type:            nonrobust

===================================================================================

coef    std err          t      P>|t|      [0.025      0.975]

-----------------------------------------------------------------------------------

Intercept         246.4341     35.233      6.995      0.000     176.358     316.510

Literacy           -0.4889      0.128     -3.832      0.000      -0.743      -0.235

np.log(Pop1831)   -31.3114      5.977     -5.239      0.000     -43.199     -19.424

==============================================================================

Omnibus:                        3.713   Durbin-Watson:                   2.019

Prob(Omnibus):                  0.156   Jarque-Bera (JB):                3.394

Skew:                          -0.487   Prob(JB):                        0.183

Kurtosis:                       3.003   Cond. No.                         702.

==============================================================================

对于数据科学家来说,掌握这些信息意义重大,但他们却常常太过信任一个自己并不真正理解的模型。因为高维数据不够直观,所以在部署这些数据之前,数据科学家有必要深入了解数据与模型。如果盲目追求像准确度或均方误差之类的性能指标,那么将造成负面影响。

Statsmodels不仅具有极其详细的统计建模,而且还能提供各种有用的数据特性和度量。例如,数据科学家们常会进行时序分解,因为它可以帮助他们更好地理解数据,以及分析何种转换和算法更为合适——这些信息非常有价值。

来源:Statsmodels
来源:Statsmodels

4. Mlxtend

Mlxtend是一个任何数据科学项目都可以应用的库。它可以说是Sci-kit learn库的扩展,能自动优化常见的数据科学任务:

  • 全自动提取与选择特征
  • 扩展Sci-kit learn库现有的数据转换器,如中心化处理和事务编码器。
  • 大量的评估指标:包括偏差方差分解(即测量模型中的偏差和方差)、特征点检测、McNemar测试、F测试等。
  • 模型可视化,包括特征边界、学习曲线、PCA交互圈和富集图绘。
  • 含有许多Sci-kit Learn库中没有的内置数据集
  • 图像与文本预处理功能,如名称泛化器,可以识别并转换具有不同命名系统的文本(如:它能识别“Deer,John”,“J.Deer”,“J.D.”和“John Deer”是相同的)。

Mlxtend还有非常实用的图像处理功能,比如它可以提取面部标志:

来源:Mlxtend
来源:Mlxtend

再来看看它的决策边界绘制功能吧:

来源:Mlxtend
来源:Mlxtend

5. REP

与Mlxtend一样,REP也可以被看作是Sci-kit学习库的扩展,但更多的是在机器学习领域。首先,它是一个统一的Python包装器,用于从Sci-kit-learn扩展而来的不同机器学习库。它可以将Sci-kit learn与XGBoost、Pybrain、Neurolab等更专业的机器学习库整合在一起。

例如,当数据科学家想要通过一个简单的包装器将XGBoost分类器转换为Bagging分类器,再将其转换为Sci-kit-learn模型时,只有REP能做到,因为在其他库中无法找到像这种易于包装和转换的算法。

除此之外,REP还能实现将模型从任何库转换为交叉验证(折叠)和堆叠模型。它还有一个极快的网格搜索功能和模型工厂,可以帮助数据科学家在同一个数据集里有效地使用多个机器学习分类器。

同时使用REP和Sci-kit learn,就能更轻松自如地构建模型。

本文系外文翻译,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系外文翻译,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
数据科学家应当了解的15个Python库
如果你是一名数据科学家或数据分析师,或者只是对这一行当感兴趣,你都应该了解下文中这些广受欢迎且非常实用的Python库。
人工智能小咖
2020/04/15
9300
数据科学家应当了解的15个Python库
避免五大误区丨数据科学家新手进阶之路
你为成为数据科学家做好了充分的准备。你参加Kaggle比赛,看了大量的Coursera课程。你感觉已经准备好了,但数据科学家的实际工作将与你的预期大不相同。
CDA数据分析师
2018/07/30
3740
避免五大误区丨数据科学家新手进阶之路
【数据科学家】数据科学家修炼之路
经常有人问我“要成为数据挖掘工程师或者数据科学家应该读什么书?”类似的问题。下面是一份建议书单,同时也是成为数据科学家的指南,当然,这不包括取得合适大学学位的要求。 在深入探讨之前,数据科学家似乎需要
陆勤_数据人网
2018/02/27
9690
【数据科学家】数据科学家修炼之路
【数据科学家】9步让你从菜鸟成为数据科学家
由于数据科学和数据分析是个快速发展的领域,当前的合格申请者严重缺乏。这使得数据科学家对于那些有兴趣,并寻找新的职业生涯的人成为有前途的和有利可图的领域。 漫画内容: 老板:用CRS数据库数据评估一下市
陆勤_数据人网
2018/02/27
6080
【数据科学家】9步让你从菜鸟成为数据科学家
数据科学家需要怎样的技能组合?
原文:http://developer.51cto.com/art/201604/508969.htm 在2016年的美国,数据科学家已经被冠以“最佳工作”的头衔,数据科学家的定义以及成为一名出色数据科学家所需的技能一直处于不断的变化之中。科技和商业需求方面的进步驱使着数据科学家随着行业的不断变化而不停的进化。在这片文章中,我们将会近距离的看一看在2016年当中,作为一名数据科学家应该扮演何种角色。 Dave Holtz写道,小小的“数据科学家”这样的岗位头衔,经常被充当一个空白头衔来用,其作用就是说明数据
机器学习AI算法工程
2018/03/13
6820
数据科学家需要怎样的技能组合?
数据科学家需要了解的15个Python库
关于更多机器学习、人工智能、增强现实、Unity、Unreal资源和技术干货,可以关注公众号:三次方AIRX
三次方AIRX
2020/12/27
7450
一条通往数据科学家的必经之路!
经常有人问我“要成为数据挖掘工程师或者数据科学家应该读什么书?”类似的问题。下面是一份建议书单,同时也是成为数据科学家的指南,当然,这不包括取得合适大学学位的要求。 在深入探讨之前,数据科学家似乎需要掌握许多技巧,如:统计学、编程、数据库、演讲技巧、数据清理与变换知识。 理想情况下,你需要具备以下技能: 了解统计学与数据预处理知识。 理解统计陷阱。你必须明白在统计分析过程中偏差与常见错误都将影响统计分析人员。 了解几个机器学习与统计技术的工作原理。 时间序列分析。 编程技巧 (R, Java, Pyth
小莹莹
2018/04/20
7860
一条通往数据科学家的必经之路!
一文总结数据科学家常用的Python库(下)
【磐创AI导读】:本系列文章为大家总结了24个热门的python库,查看上篇。想要获取更多的机器学习、深度学习资源,欢迎大家点击上方蓝字关注我们的公众号:磐创AI。一文总结数据科学家常用的Python库(上)
磐创AI
2019/07/26
1.4K0
一文总结数据科学家常用的Python库(下)
数据科学20个最好的Python库
Python 在解决数据科学任务和挑战方面继续处于领先地位。去年,我们曾发表一篇博客文章 Top 15 Python Libraries for Data Science in 2017,概述了当时业已证明最有帮助的Python库。今年,我们扩展了这个清单,增加了新的Python库,并重新审视了去年已经讨论过的 Python 库,重点关注了这一年来的更新。
机器人网
2018/07/23
7220
数据科学20个最好的Python库
业界 | 数据科学家最需要什么技能?
数据科学家需要涉猎很多——机器学习、计算机科学、统计学、数学、数据可视化、通信和深度学习。这些领域中有几十种语言、框架和技术可供数据科学家学习。那么要想成为雇主需要的数据科学家,他们应该如何安排学习内容呢?
机器之心
2018/11/23
5350
【Python环境】学习Python:做数据科学还是网站开发?
本文的英文原文地址是:Python for Data Science vs Python for Web Development,发布时间是10月29日。译者一开始在Python日报上看到推荐,初步看看了,觉得对于决定学习Python的方向有一定参考价值。不过,在翻译过程中,越来越觉得这其实就是一篇搞Python数据科学培训的公司写的软文,里面写的内容还是比较浅的,只适合像我这样的初学者了解大致情况。当然,文章提到了Python作为网络开发技能的市场需求并不是很高,这点感觉并不是没有根据。作为一篇软文,它成
陆勤_数据人网
2018/02/27
9970
【Python环境】学习Python:做数据科学还是网站开发?
推荐|2017年最受数据科学欢迎的Top15个Python库!
如果你觉得好的话,不妨分享到朋友圈。 近几年Python已成为数据科学行业中大火的编程语言,我们将根据以往的经验来为大家总结一下数据科学家和工程师几个最实用的python库。如果你是正在学习Python的学生,也许根据这个表单能够帮你更好地找到学习的重心. 1. NumPy库:在用Python处理科学任务时,我们常常需要使用Python的SciPy Stack。SciPyStack是一个专门为用Python处理科学计算而设计的软件集(注意不要把SciPy Stack和SciPy库搞混啦;SciPy库只是
IT派
2018/03/28
9590
推荐|2017年最受数据科学欢迎的Top15个Python库!
2017年数据科学15个最好用的Python库
大数据文摘作品,转载要求见文末 作者:Igor Bobriakov 编译:朱璇、卫青、万如苑 导读:随着近几年Python已成为数据科学行业中大火的编程语言,我们将根据以往的经验来为大家总结一下数据科学家和工程师几个最实用的python库。如果你是正在学习Python的学生,也许根据这个表单能够帮你更好地找到学习的重心。 因为所有的python库都是开源的,所以我们还列出了每个库的提交次数、贡献者人数和其他一些来自Github可以代表Python库流行度的指标。 核心库 1. NumPy(Github提交次
大数据文摘
2018/05/25
7660
IT屌丝如何成为数据科学家?
数据科学家被《财富》杂志誉为21世纪最性感的职业,但遗憾的是大多数企业里都没有真正的数据科学家人才。根据麦肯锡报告,仅仅在美国市场,2018年大数据人才和高级分析专家的人才缺口将高达19万。此外美国企业还需要150万位能够提出正确问题、运用大数据分析结果的大数据相关管理人才。 那么,对于不同职业经历和专业背景的IT人士来说,如何才能尽快转型,加入数据科学家的钻石王老五的行列呢? Ofer Mendelevitch近日在Hortonworks官方博客发表文章给出了自己的观点。 Mendelevitch认为无论
CDA数据分析师
2018/02/23
5960
数据科学家的自我修养 | 哪些技能是必不可少的?
市场上对数据科学家的要求特别多:需要掌握机器学习、计算机科学、统计学、数学、数据可视化,深度学习等知识。要想全部掌握这些方面的知识,科学家需要学习数十种语言、框架和技术。那么,为此数据科学家应该如何合理地分配时间,该掌握哪些技能呢?
CDA数据分析师
2018/12/04
5150
数据科学家的自我修养 | 哪些技能是必不可少的?
【数据科学家】如何成为一名数据科学家?
一、数据科学家的起源 “数据科学”(DataScience)起初叫”datalogy “。最初在1966年由Peter Naur提出,用来代替”计算机科学”(丹麦人,2005年图灵奖得主,丹麦的计算机学会的正式名称就叫Danish Society of Datalogy,他是这个学会的第一任主席。Algol 60是许多后来的程序设计语言,包括今天那些必不可少的软件工程工具的原型。图灵奖被认为是“计算科学界的诺贝尔奖”。) 1996年,International Federation of Classific
陆勤_数据人网
2018/02/27
8320
【数据科学家】如何成为一名数据科学家?
Python Vs R:数据科学家的永恒问题pythonR结论
Python有一些使用案例,R也是如此。使用它们的场景各不相同。 更常见的是环境以及客户或雇主的需求决定了Python和R之间的选择。许多事情在Python中都比较容易。 但R也在您的开发工具包中占有一席之地。
用户1359560
2018/10/08
8580
Python Vs R:数据科学家的永恒问题pythonR结论
【智能】如何成为数据科学家:权威指南
你好!我是Jose Portilla,Udemy的讲师,有超过25万名学生注册了各种各样的课程,包括Python的数据科学和机器学习、R编程的数据科学、Python的大数据等等。
陆勤_数据人网
2018/11/08
6310
盘点20个最好的数据科学Python库(附链接)
Python 在解决数据科学任务和挑战方面继续处于领先地位。我们的选择实际上包含了 20 多个库,因为其中一些库是相互替代的,可以解决相同的问题。因此,我们将它们放在同一个分组。
IT阅读排行榜
2019/03/04
6710
盘点20个最好的数据科学Python库(附链接)
独家 | 数据科学家应该了解的5个 Python库(附链接)
作者:Artem Shelamanov 翻译:陈之炎校对:赵茹萱本文约2800字,建议阅读5分钟本文介绍了机器学习库,并掌握了模型架构之后,便可以训练模型解决现实问题。
数据派THU
2024/04/25
3140
独家 | 数据科学家应该了解的5个 Python库(附链接)
推荐阅读
相关推荐
数据科学家应当了解的15个Python库
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档