如果你正在学习数据科学,是否想快速解决其中的一些问题?那么我们就必须将目光转向Python。本文将介绍一些基本的数据科学库,学好之后,你也可以从6飞到6。核心库Python有3个核心数据科学库,在此基础上还创建了许多其他库。三个核心数据科学库是:NumpyScipyMatplotlib为简单起见,将Numpy视为首选数组。Numpy数组在许多方面与标准Python列表不同,但有几点需要记住,Numpy数组执行操作速度更快,占用空间更少,并且比标准Python列表具有更多功能。但还要注意,这些数组的大小和类型是固定的,可以在创建数组时定义。同时,它也不像一个可以无限增加新值的列表。Scipy基于Numpy,提供了优化、统计和线性代数处理等诸多功能。虽然Numpy具有类似的功能,但我个人更喜欢Scipy的功能。想要计算相关系数或创建一些正态分布的数据?Scipy是为你而生的。与其他数据科学库相比,Matplotlib可能有点平庸,但它是Python绘图的核心库。它功能强大,可以在需要时进行有效控制。二代库核心库很好,也很常用。但是,还有三个基于核心库的第二代库,它们提供更多的功能并使用更少的代码。如果你一直在学习数据科学,还没有听说过Scikit-learn,那我也无话可说。Scikit-learn是Python中的机器学习库。它具有强大的社区支持、文档和统一且易于使用的API。该库专注于“核心”机器学习,包括结构化数据的回归、分类和聚类。但它不适用于深度学习或贝叶斯机器学习之类的东西。Pandas的创建是为了简化Python中的数据分析。Pandas使得加载结构化数据、计算统计数据和切片数据变得非常容易。它是数据挖掘和分析阶段必不可少的工具。但我个人不建议在数据生成阶段使用Pandas,因为它通常不能很好地扩展到大型数据集。但是,可以将Pandas代码转换为原始Numpy数组,这可以显着提高数据生成的速度。尽管Matplotlib在视觉上不是最令人愉悦的,但Seaborn可以轻松创建漂亮的数据可视化。Seaborn建立在Matplotlib之上,因此仍然可以使用Matplotlib功能添加或编辑Seaborn图表。它还使复杂图表类型的创建更加容易。看看下面的图片以获得一些灵感:深度学习随着深度学习的快速发展,不提这个领域更好的Python包是不明智的。我是Pytorch的忠实粉丝。如果你想在学习数据科学库的同时开始深度学习,从而相对容易地实现非常高级的深度学习算法,那么Pytorch是最佳选择。Pytorch正逐渐成为研究和实现大量功能的标准深度学习库,使其在数据生成用例方面越来越完善。这些示例还提供了许多很好的入门教程。就我个人而言,Keras是第一个真正让深度学习触手可及的数据科学库。您可以使用10行非常易于阅读和理解的代码来创建和训练深度学习模型。但它的缺点是高度抽象使得Keras目前不支持的新研究难以启用(尽管他们在这方面不断改进)。它还支持多个后端,即Tensorflow和CNTK。Tensorflow由谷歌创建,为生产中的深度学习提供了强大的支持。个人认为,Tensorflow的初始版本相当笨拙,但他们学到了很多东西,而Tensorflow2.0让深度学习的门槛越来越低。在Pytorch为深度学习提供更多生产支持的同时,Tensorflow大大提高了深度学习的可用性。统计我想用Python中的两个主要统计建模库来结束这篇文章。如果你用过R,你可能会疑惑为什么Scikit-learn在计算回归系数时不给出p值。如果是这样,您需要查看statsmodels。个人觉得statsmodels对统计模型和测试提供了很好的支持,甚至支持很多R语法。概率编程和建模非常有趣。如果您是该领域的新手,请查看BayesianMethodsforHackers,或使用PyMC3。PyMC3使得定义概率模型变得非常直观,并为许多高级模型提供了大量支持。在我之前,没有人相信Python中有许多令人惊叹的数据科学库。本文的目的是关注最基本的数据科学库。借助Python和这些出色的数据科学库,您会惊叹于自己所能取得的成就。我希望这篇文章是您涉足数据科学的一个很好的起点,并且它只是您即将发现的所有令人惊叹的数据科学库的开始。
