anaconda和conda——关于python的数据科学开发环境,数据科学必备的十大python库(代码片段)

小哈里 小哈里     2023-01-15     520

关键词:

1、什么是anaconda?

  • Anaconda是一个免费开源的Python和R语言的发行版本
    如果把Python类比成Linux,那么Anaconda就是centos、ubuntu。
    换句话说,Anaconda就是一个整合了python及一系列pip包的第三方软件,类似于Web开发的LNMP一键安装之类的

  • Anaconda主要用于计算科学(数据科学、机器学习、大数据处理和预测分析)
    它支持 Linux、Mac、Windows系统,可用超过600个python数据科学库(约 500 MB)

  • Anaconda的优点:
    第一:提供了包管理功能,Windows 平台安装第三方包经常失败的场景得以解决
    第二:提供环境管理的功能,功能类似 Virtualenv,解决了多版本Python并存、切换的问题。

  • Anaconda使用conda代替pip作为包管理工具
    2012年发布的跨平台包管理软件conda ,是在数据分析界和Numpy和Scipy一样受欢迎的python工具。
    conda作为一种包管理工具,支持包括python在内的R,Ruby,Lua,Scala,Java,JavaScript,C / C ++等一些列语言软件包、依赖项和环境管理系统的管理。
    Conda可以快速安装、运行和更新软件包及其依赖项。Conda可以轻松地在本地计算机上的环境中创建,保存,加载和切换。
    可以使用 pip install conda一键安装。

2、如何使用Anaconda

一般把这些数据科学库分为四大类:基础库(jupyter、pandas、numpy、scipy),机器学习库(sikit-learn、nltk、keras、tensorflow、pytorch),可视化库(matplotlib、seaborn、plotly)、拓展计算库(numba、dask、pyspark)

你可以使用Anaconda研究数据处理、数据建模、机器学习、神经网络、自然语言处理、可视化展示、教学等等等。

常用数据科学库介绍:

基础库

1、NumPy

  • NumPy是一个主要用于数据分析、科学计算和数据科学 的Python库。NumPy主要支持多维数组和矩阵
  • 它是许多库的基础,例如机器学习的 SciPy 和 scikit-learn。NumPy 有助于对数组及其向量化进行数学运算,这可以提高性能和执行时间。

2、Pandas

  • Pandas适合整理和合并数据。 Pandas主要用于轻松快速地进行数据处理,数据聚合和数据可视化。
  • Pandas 允许您从不同的文件格式(例如 CSV,JSON,SQL 和 Microsoft Excel)导入数据。它基于两个主要数据结构:“Series”(一维)和 “DataFrame”(二维)。
  • 数据框与统计软件(例如 Excel 和 SPSS)中的表非常相似。Pandas 允许执行各种数据操作,例如处理和填补缺失的数据,建立索引,从数据框中添加和删除列,合并,重塑,选择等……

3、SciPy

  • SciPy(Scientific Python)是用于高级科学计算的另一个核心库。它基于 NumPy 构建,并扩展了其功能,提供了许多友好且高效的模块,用于科学和数值计算。
  • SciPy 包含处理数据集成,数据优化,数据插值,数据修改,线性代数,概率论,随机数生成,积分演算,傅立叶变换等的模块

4、jupyter

  • Jupyter Notebook是一个基于浏览器的交互式编程环境,它主要构建在IPython等开源库上,允许我们在浏览器上运行交互式python代码
  • 能让用户将说明文本、数学方程、代码和可视化内容全部组合到一个易于共享的文档中。它可以直接在代码旁写出叙述性文档,而不是另外编写单独的文档。也就是它可以能将代码、文档等这一切集中到一处,让用户一目了然。

机器学习库

1、Scikit-Learn

  • Scikit-Learn 是一个免费的机器学习 Python 库,用于数据挖掘任务和建模(例如回归,分类和聚类)
  • 它包含监督和非监督算法,例如决策树,SVM,朴素贝叶斯,随机森林,交叉验证,k 均值聚类等。NumPy,SciPy,Matplotlib,Pandas都支持 Scikit-Learn。

2、TensorFlow

  • TensorFlow 是 Google 为机器学习和深度学习开发的流行框架。TensorFlow 可以有效地进行数据分类和预测。它是完成自然语言处理,对象识别,语音识别,运动检测等任务的最佳工具。
  • 使用 TensorFlow,您可以轻松构建和训练机器学习模型。它还允许您在云,浏览器或本地计算机上的任何位置部署机器学习模型。大型公司如 Google,Twitter,可口可乐,Airbnb 等都在使用 TensorFlow。

3、Keras

  • Keras 是用于训练和构建神经网络和建模的库。与同时提供高级和低级 API 的 TensorFlow 不同,Keras 仅提供高级 API。
  • Keras 可以使你**在深度神经网络中更轻松地处理不同类型的图像和文本数据。**它可以与 TensorFlow,Theano 等库一起使用。

4、nltk

  • NLTK 是一组库,一个用于自然语言处理的完整平台。在 NLTK 的帮助下,你可以以各种方式处理和分析文本,对文本进行标记和标记,提取信息等。NLTK 也用于原型设计和建立研究系统。

5、pytorch

  • PyTorch 是一个大型框架,它允许使用 GPU 加速执行张量计算,创建动态计算图并自动计算梯度
  • 在此之上,PyTorch 为解决与神经网络相关的应用程序提供了丰富的 API。该库基于 Torch,是用 C 实现的开源深度学习库。

可视化库

1、seaborn

  • Seaborn 是基于 Matplotlib 构建的高级数据可视化库,该库与 NumPy 和 Pandas 数据结构集成在一起。它用作绘制引人入胜的统计图形,热图和其他类型的可视化数据。它有着丰富的可视化库,包括一些复杂的类型,例如时间序列,联合图和小提琴图。
  • Seaborn 的数据图形可以包括条形图和直方图,饼图,散点图等。Seaborn 还可以用于确定变量之间的关系(相关性),为因变量绘制线性回归模型,查看和观察分类变量等。

2、matplotlib

  • Matplolib是另一个用于数据可视化的有用Python库。描述性分析和可视化数据对任何组织都是非常重要的。Matplotlib提供了各种方法来有效地可视化数据。
  • Matplotlib允许您快速制作线形图、饼状图、直方图和其他专业级图形。 使用Matplotlib,可以定制图形的每个方面。Matplotlib具有缩放、规划和以图形格式保存图形等交互式功能。

3、plotly

  • Plotly python库 (plotly.py)是一个交互性的开源绘图库。它支持超过40种不同的图标类型,广泛涵盖了统计,金融,地理,科学和3维的用户用例

  • 因为它基于Plotly JavaScript库(plotly.js),plotly.py支持Python用户创建漂亮的交互性的基于网络的可视化,并可以在Jupyter Notebooks内展示,保存为独立的HTML文件,或者作为一个使用Dash的纯Python开发的网络应用的一部分。


拓展计算库(numba、dask、pyspark)

1、Scrapy

  • Scrapy是一个Python框架,广泛用于Web抓取。
  • Scrapy被广泛用于提取,存储和处理大量Web数据。 Scrapy使我们能够轻松处理大量数据。

2、BeautifulSoup

  • 如果想要提取些数据出来,那么 BeautifulSoup 正是你所需要的,可以用它在网页中提取内容。

3、Requests

  • Requests 是 Python 中为人们搭建的优雅而简单的 HTTP 库。作为一名数据科学家,你或许需要从网上采集数据,而Requests 则为你提供了强大的工具。

4、dask

  • Dask是一个开源项目,它允许开发者与scikit-learn、pandas和NumPy合作开发他们的软件。它是一个非常通用的工具,可以处理各种工作负载。
  • 这个工具包括两个重要的部分;动态任务调度和大数据收集。前面的部分与Luigi、芹菜和气流非常相似,但它是专门为交互式计算工作负载优化的。

5、numba

  • Numba是一个库,可以在运行时将Python代码编译为本地机器指令,而不会强制大幅度的改变普通的Python代码。翻译/魔术是使用LLVM编译器完成的,该编译器是相当活跃的开源社区开发的。
  • 在计算性能方面,它比Numpy表现的更好。

6、pyspark

  • 它是由python和spark组合使用的。它进行内存计算以实时分析数据。由于 Apache Hadoop MapReduce 仅执行批处理并且缺乏实时处理功能,因此它开始出现。
  • 因此,引入了Apache Spark,因为它可以实时执行流处理,也可以处理批处理。

7、Statsmodels

  • Statsmodels 是 Python 中一个强大的统计分析包 ,包含了回归分析、时间序列分析、假设检验等等的功能。
  • Statsmodels 在计量的简便性上是远远不及 Stata 等软件的,但它的优点在于可以与 Python 的其他的任务(如 NumPy、Pandas)有效结合,提高工作效率。

3、配套IDE工具Spyder

可以看到Spyder的界面设计和matlab十分地相似,熟悉matlab的同学可以很快地习惯使用Spyder,但也有些许不同。

1.首先是快捷键,一般来说调试的快捷键会设置为F5,它的调试是Ctrl+F5,还有逐步调试也不一样,总之为了方便,把调试快捷键改成了习惯的方式。修改的方法是工具栏上的TOOL->Preferences->Keyboard shortcuts,然后相应地对快捷键进行修改。
2.其次是断点的设置方式,一般来说断点是点击一次编辑区旁边的竖条,但是Spyder是两次,取消也是连击两次,个人非常不能理解为什么要这么设置。当然你也可以直接选择断点的快捷键,默认快键键是Ctrl+F12,我给改成了F12。
3.代码提示,matlab的代码提示是输入函数的前几个字母然后按tab键,python则是先写个.然后按tab键。如果是创建的对象就直接写个.就有代码提示了。

Spyder有三个“工作空间”(功能窗格),分别是代码编辑,变量查看和控制台Shell。

下面的代码导入第三方库matplotlib和numpy,生成一组正态分布的数据a,并绘制a的直方图。
点击运行,我们可以在控制台看到程序运行成功,查看变量管理器窗格,看到变量a已经生成。如上图所示:

import matplotlib.pyplot as plt
import numpy as np

a = np.random.normal(size=10000)
plt.hist(a)

anaconda新手使用教程(代码片段)

Anaconda使用教程一(新手友好)前言一、python和包以及anaconda的概念关系关于python与包关于anaconda二、Anaconda安装问题对windows三、Anaconda使用问题配置Anaconda源可能出现的错误condainstall仍然出现下载速度慢的错误四、Anaconda... 查看详情

windows系统安装anaconda

...Conda是一个跨平台、与语言无关的二进制包管理器。它是Anaconda安装使用的包管理器,但它可能是也用于其他系统。Conda完全是用Python编写的,并且是BSD许可的开放源(开源地址:GitHub-conda/conda:一个系统级的二进制包和环境管理... 查看详情

如何优雅的安装python的pandas

一.安装pandas1.Anaconda安装pandas、Python和SciPy最简单的方式是用Anaconda。Anaconda是关于Python数据分析和科学计算的分发包。2.Miniconda使用Anaconda会安装一百多个依赖包,如果想灵活控制安装的依赖包或带宽有限,使用Miniconda是个不错的... 查看详情

python虚拟环境conda命令(代码片段)

python虚拟环境conda命令1.安装anacondaanaconda是一个python的发行版,包括了python和很多常见的软件库,和一个包管理器conda。使用conda创建环境,以便分隔使用不同Python版本和不同程序包的项目。你还将使用它在环境中安装、卸... 查看详情

python虚拟环境conda命令(代码片段)

python虚拟环境conda命令1.安装anacondaanaconda是一个python的发行版,包括了python和很多常见的软件库,和一个包管理器conda。使用conda创建环境,以便分隔使用不同Python版本和不同程序包的项目。你还将使用它在环境中安装、卸... 查看详情

关于anaconda3的conda命令在使用过程中突然失效

...allcondaasastandaloneapplication,currentlysupportedinstallmethodsincludetheAnacondainstallerandtheminicondainstaller.Youcandownloadtheminicondainstallerfromhttps://conda.io/miniconda.html.(按理说按照教程一步步安装Anaconda3的话,环境变量是自动添加好的,但是不排除没... 查看详情

关于anaconda在mac的相关环境变量问题(代码片段)

在MAC上安装Anaconda后在ITerm2终端输命令总是会出现zsh:commandnotfound:conda,默认把路径写在bash_profile里面?bincat~/.bash_profile#addedbyAnaconda32.5.0installerexportPATH="/Users/Irving/anaconda/bin:$PATH"#addedbyAnaconda32.5.0installerexportPATH="//anaconda/bin:$PATH"#>&... 查看详情

anaconda与python啥关系

...一系列包,需要安装pip来导入这些包才能进行相应运算。Anaconda(开源的Python包管理器)是一个python发行版,包含了conda、Python等180多个科学包及其依赖项。包含了大量的包,使用anaconda无需再去额外安装所需包。2、作用不同,Python... 查看详情

anaconda的安装和详细介绍(带图文)(代码片段)

Anacond的介绍Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。 因为包含了大量的科学包,Anaconda的下载文件比较大(约531MB),如果只需要某些包,或者需要节省带宽或存储空间,也可... 查看详情

如何在vs2017管理anaconda的python包

...移除一些包4)对于一些不能使用conda安装的包,我们将在Anaconda.org网站上搜索5)对于那些在其它位置的包,我们将使用pip命令来实现安装。我们还会安装一个可以免费试用30天的商业包IOPro移除包、环境以及conda管理conda:检查conda... 查看详情

anaconda使用入门(代码片段)

...同版本的软件包及其依赖,并能够在不同的环境之间切换Anaconda包括Conda、Python以及一大堆安装好的工具包,比如:numpy、pandas等Miniconda包括Conda、Python一般我们下载使用的就是Anaconda,包括了基本的一些工具包,conda就是用于管理... 查看详情

java调用python时怎样使用python的pandas模块

参考技术A安装pandas1.Anaconda安装pandas、Python和SciPy最简单的方式是用Anaconda。Anaconda是关于Python数据分析和科学计算的分发包。2.Miniconda使用Anaconda会安装一百多个依赖包,如果想灵活控制安装的依赖包或带宽有限,使用Miniconda是个... 查看详情

anaconda和pycharm的区别是啥?

anaconda和pycharm的区别是什么?主要的区别在于anaconda是一个python发行版,使用它你就不需要额外安装python包了,PyCharm则是一款开发工具,用力提高开发效率的。AnacondaAnaconda(开源的Python包管理器)是一个python发行版,包含了conda、P... 查看详情

python基础—conda使用笔记(代码片段)

...做过多描述。当然,可以参考博客,写得很详细:python与anaconda安装(先安装了python后安装anaconda,基于python已存在的基础上安装anaconda)——逼死强迫症、超详解1.2.配置环境变量在系统变量—Path中添加Miniconda的相关路径这里我... 查看详情

如何改变anaconda的gcc版本

参考技术AAnaconda是一个和Canopy类似的科学计算环境,但用起来更加方便。自带的包管理器conda也很强大。  首先是下载安装。Anaconda提供了Python2.7和Python3.4两个版本,同时如果需要其他版本,还可以通过conda来创建。安装完成后... 查看详情

创建conda虚拟环境以及python的virtualenv虚拟环境

...有创建虚拟环境系统变量里面的path要改,总共有3个:D:\\Anaconda3;D:\\Anaconda3\\Scripts;D:\\Anaconda3\\Library\\bin;conda常用的命令1)condalist查看安装了哪些包。2)condaenvli 查看详情

annacoda怎么安装python模块

Anaconda是一个和Canopy类似的科学计算环境,但用起来更加方便。自带的包管理器conda也很强大。首先是下载安装。Anaconda提供了Python2.7和Python3.4两个版本,同时如果需要其他版本,还可以通过conda来创建。安装完成后可以看到,Anac... 查看详情

anaconda基本认识

AnacondaDistribution是执行Python数据科学和机器学习最简单的方法。它包括250多种流行的数据科学软件包,以及适用于Windows,Linux和MacOS的conda软件包和虚拟环境管理器。Conda使安装,运行和升级复杂的数据科学和机器学习环境(如Scik... 查看详情