草庐IT

Ubuntu 22.04上安装Anaconda,及 conda 的基础使用

戴国进 2024-03-30 原文

一、Anaconda 简介

Anaconda是Python和R编程语言的开源包管理器、环境管理器和发行版。它通常用于数据科学、机器学习、大规模数据处理、科学计算和预测分析。

Anaconda 提供了1000多个数据科学软件包,提供免费和付费企业版本。Anaconda distribution附带conda命令行实用程序。

二、安装Anaconda

1. 安装软件依赖包:

apt install libgl1-mesa-glx libegl1-mesa libxrandr2 libxrandr2 libxss1 libxcursor1 libxcomposite1 libasound2 libxi6 libxtst6

2. 下载Anaconda安装包

安装Anaconda的最佳方法是下载最新的Anaconda安装程序bash脚本, 然后运行它。

Anaconda下载页面上找到适用于Python 3的最新版本的Anacoda。在撰写本文时,最新版本是2022.10,但如果有更高的稳定版本,您应该使用它。

使用 wget下载您从Anaconda网站复制的链接。您将把它输出到一个名为anaconda.sh的文件中,以便更快地使用。

wget https://repo.anaconda.com/archive/Anaconda3-2022.10-Linux-x86_64.sh

现在可以运行脚本:

bash anaconda.sh

安装过程基本上一路回车就可以了。

3. 修改 .bashrc

现在,您可以通过修改 ~/.bashrc文件来激活安装。

在 ~/.bashrc 末尾添加:

export PATH="~/anaconda3/bin":$PATH
source ~/anaconda3/bin/activate

 后执行:

source ~/.bashrc

完成后,您将被置于Anaconda的默认base编程环境中。

虽然Anaconda附带了这个默认的base编程环境,但您应该为您的程序创建单独的环境,并使它们彼此隔离。

您可以使用conda命令进一步验证安装,例如list:

conda list

通过Anaconda安装,您将收到所有可用软件包的输出:

Output# packages in environment at /home/sammy/anaconda3:
#
# Name                    Version                   Build  Channel
_ipyw_jlab_nb_ext_conf    0.1.0            py39h06a4308_0
_libgcc_mutex             0.1                        main
_openmp_mutex             4.5                       1_gnu
alabaster                 0.7.12             pyhd3eb1b0_0
anaconda                  2021.11                  py39_0 
...

现在安装了Anaconda,您可以继续设置Anaconda环境。

三、通过Anaconda设置Python环境

Anaconda虚拟环境允许您按照所需的Python版本和包来组织项目。对于您设置的每个Anaconda环境,您可以指定使用哪个版本的Python,并可以将所有相关的编程文件保存在该目录中。

首先,您可以查看哪些版本的Python可供我们使用:

conda search "^python$"

您将收到可以针对的不同版本的Python的输出,包括Python 3和Python 2版本;由于在本教程中您将Anaconda与Python 3一起使用,因此您只能访问Python 3版本的软件包。

接下来,使用最新版本的Python 3创建一个环境。您可以通过将版本3分配给python参数来实现这一点。您可以将环境称为my_env,但您可能希望为您的环境使用更具描述性的名称,尤其是当您使用环境访问多个版本的Python时。

conda create --name my_env python=3

您将收到有关下载内容和将安装哪些软件包的信息输出,然后提示继续yn

conda实用程序现在将获取环境的包,并在完成时通知您。

您可以通过键入以下内容来激活新环境:

conda activate my_env

激活环境后,命令提示符前缀将反映出您不再处于base环境中,而是处于刚刚创建的新环境中。

在该环境中,您可以验证您使用的是您打算使用的Python版本:

python --version
OutputPython 3.10.4

当您准备停用Anaconda环境时,可以通过键入以下内容来执行此操作:

conda deactivate

要针对更具体的Python版本,可以将特定版本传递给python参数,例如3.5,例如:

conda create -n my_env35 python=3.5

您可以检查使用此命令设置的所有环境:

conda info --envs
Output# conda environments:
#
base                  *  /home/sammy/anaconda3
my_env                   /home/sammy/anaconda3/envs/my_env
my_env35                 /home/sammy/anaconda3/envs/my_env35

星号表示当前活动环境。

使用conda create创建的每个环境都会附带几个默认包:

  • _libgcc_mutex

  • ca-certificates

  • certifi

  • libedit

  • libffi

  • libgcc-ng

  • libstdcxx-ng

  • ncurses

  • openssl

  • pip

  • python

  • readline

  • setuptools

  • sqlite

  • tk

  • wheel

  • xz

  • zlib

您可以使用以下命令添加其他包,例如numpy:

conda install --name my_env35 numpy

如果您知道在创建时想要numpy环境,可以在conda create命令中瞄准它:

conda create --name my_env python=3 numpy

如果您不再处理特定项目,并且不再需要关联的环境,则可以将其删除。为此,请键入以下内容:

conda remove --name my_env35 --all

现在,当您键入conda info --envs命令时,您删除的环境将不再列出。

四、更新Anaconda

您应该定期确保Anaconda是最新的,以便使用所有最新的软件包版本。

为此,应首先更新conda实用程序:

conda update conda

当提示这样做时,键入y继续更新。

conda的更新完成后,您可以更新Anaconda分发:

conda update anaconda

再次提示时,键入y继续。

这将确保您使用的是最新版本的conda和Anaconda。

五、卸载Anaconda

如果您不再使用Anaconda,并且发现需要卸载它,那么应该从anaconda-clean模块开始,该模块将在卸载Anaconda时删除配置文件。

conda install anaconda-clean

提示时键入y

安装后,可以运行以下命令。在删除每个选项之前,系统将提示您回答y。如果不希望出现提示,请在命令末尾添加--yes:

anaconda-clean

这还会在您的主目录中创建一个名为 .anaconda_backup的备份文件夹:

OutputBackup directory: /home/sammy/.anaconda_backup/2022-03-31T182409

现在,您可以通过输入以下命令删除整个Anaconda目录:

rm -rf ~/anaconda3

最后,您可以从Anaconda添加的.bashrc文件中删除路径行。为此,首先打开文本编辑器,如nano:

nano ~/.bashrc

然后向下滚动到文件末尾(如果这是最近安装的),或键入CTRL + W以搜索Anaconda;删除或注释掉此Anaconda块:

/home/sammy/.bashrc

...
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/sammy/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/home/sammy/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/home/sammy/anaconda3/etc/profile.d/conda.sh"
    else
        export PATH="/home/sammy/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda initialize <<<

编辑完文件后,键入CTRL + X退出,键入y保存更改。

Anaconda现在已从服务器中删除。如果未停用base编程环境,则可以退出并重新进入服务器以将其删除。

六、Conda 的基础使用

1. 环境管理 

# 1.查看conda的版本号
conda --version
# 2.查看虚拟环境列表
conda info --envs
# 3.创建虚拟环境并指定python的版本号为3.8
conda create -n virtualname pip python=3.9
# 4.激活虚拟环境
conda activate virtualname
# 5.退出虚拟环境
conda deactivate
# 6.删除虚拟环境
conda remove --name virtualname --all

2. 包管理

# 1.安装包
conda install PackageName
# 2.安装多个包
conda install name1 name2 ...
# 3.安装包并指定版本号
conda install PackageName=版本号
# 4.卸载包
conda remove PackageName
# 5.更新包
conda update PackageName
# 6.更新环境中的所有包
conda update --all
# 7.列出已安装的包
conda list
# 8.搜寻包
conda search PackageName

七、Pycharm 使用 Anaconda 环境

打开pycharm,选择对应的conda环境。

选择‘’Add new Interpreter”添加刚才建立的虚拟环境。
选择“conda environment”,点击“Interpreter”,填写“/home/xxxx/anaconda3/envs/py/bin/python3.9”
#注意,执行命令:

conda activate py

后,在Anaconda的安装目录的envs文件夹下,会生成刚刚创建的虚拟环境名称的文件夹。

有关Ubuntu 22.04上安装Anaconda,及 conda 的基础使用的更多相关文章

  1. ruby - 如何使用 Nokogiri 的 xpath 和 at_xpath 方法 - 2

    我正在学习如何使用Nokogiri,根据这段代码我遇到了一些问题:require'rubygems'require'mechanize'post_agent=WWW::Mechanize.newpost_page=post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')puts"\nabsolutepathwithtbodygivesnil"putspost_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div

  2. ruby - 使用 RubyZip 生成 ZIP 文件时设置压缩级别 - 2

    我有一个Ruby程序,它使用rubyzip压缩XML文件的目录树。gem。我的问题是文件开始变得很重,我想提高压缩级别,因为压缩时间不是问题。我在rubyzipdocumentation中找不到一种为创建的ZIP文件指定压缩级别的方法。有人知道如何更改此设置吗?是否有另一个允许指定压缩级别的Ruby库? 最佳答案 这是我通过查看ruby​​zip内部创建的代码。level=Zlib::BEST_COMPRESSIONZip::ZipOutputStream.open(zip_file)do|zip|Dir.glob("**/*")d

  3. ruby - 为什么我可以在 Ruby 中使用 Object#send 访问私有(private)/ protected 方法? - 2

    类classAprivatedeffooputs:fooendpublicdefbarputs:barendprivatedefzimputs:zimendprotecteddefdibputs:dibendendA的实例a=A.new测试a.foorescueputs:faila.barrescueputs:faila.zimrescueputs:faila.dibrescueputs:faila.gazrescueputs:fail测试输出failbarfailfailfail.发送测试[:foo,:bar,:zim,:dib,:gaz].each{|m|a.send(m)resc

  4. ruby-on-rails - 使用 Ruby on Rails 进行自动化测试 - 最佳实践 - 2

    很好奇,就使用ruby​​onrails自动化单元测试而言,你们正在做什么?您是否创建了一个脚本来在cron中运行rake作业并将结果邮寄给您?git中的预提交Hook?只是手动调用?我完全理解测试,但想知道在错误发生之前捕获错误的最佳实践是什么。让我们理所当然地认为测试本身是完美无缺的,并且可以正常工作。下一步是什么以确保他们在正确的时间将可能有害的结果传达给您? 最佳答案 不确定您到底想听什么,但是有几个级别的自动代码库控制:在处理某项功能时,您可以使用类似autotest的内容获得关于哪些有效,哪些无效的即时反馈。要确保您的提

  5. ruby - 在 Ruby 中使用匿名模块 - 2

    假设我做了一个模块如下:m=Module.newdoclassCendend三个问题:除了对m的引用之外,还有什么方法可以访问C和m中的其他内容?我可以在创建匿名模块后为其命名吗(就像我输入“module...”一样)?如何在使用完匿名模块后将其删除,使其定义的常量不再存在? 最佳答案 三个答案:是的,使用ObjectSpace.此代码使c引用你的类(class)C不引用m:c=nilObjectSpace.each_object{|obj|c=objif(Class===objandobj.name=~/::C$/)}当然这取决于

  6. ruby - 使用 ruby​​ 和 savon 的 SOAP 服务 - 2

    我正在尝试使用ruby​​和Savon来使用网络服务。测试服务为http://www.webservicex.net/WS/WSDetails.aspx?WSID=9&CATID=2require'rubygems'require'savon'client=Savon::Client.new"http://www.webservicex.net/stockquote.asmx?WSDL"client.get_quotedo|soap|soap.body={:symbol=>"AAPL"}end返回SOAP异常。检查soap信封,在我看来soap请求没有正确的命名空间。任何人都可以建议我

  7. python - 如何使用 Ruby 或 Python 创建一系列高音调和低音调的蜂鸣声? - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。

  8. ruby-on-rails - 'compass watch' 是如何工作的/它是如何与 rails 一起使用的 - 2

    我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t

  9. ruby - 使用 ruby​​ 将 HTML 转换为纯文本并维护结构/格式 - 2

    我想将html转换为纯文本。不过,我不想只删除标签,我想智能地保留尽可能多的格式。为插入换行符标签,检测段落并格式化它们等。输入非常简单,通常是格式良好的html(不是整个文档,只是一堆内容,通常没有anchor或图像)。我可以将几个正则表达式放在一起,让我达到80%,但我认为可能有一些现有的解决方案更智能。 最佳答案 首先,不要尝试为此使用正则表达式。很有可能你会想出一个脆弱/脆弱的解决方案,它会随着HTML的变化而崩溃,或者很难管理和维护。您可以使用Nokogiri快速解析HTML并提取文本:require'nokogiri'h

  10. ruby - 在 64 位 Snow Leopard 上使用 rvm、postgres 9.0、ruby 1.9.2-p136 安装 pg gem 时出现问题 - 2

    我想为Heroku构建一个Rails3应用程序。他们使用Postgres作为他们的数据库,所以我通过MacPorts安装了postgres9.0。现在我需要一个postgresgem并且共识是出于性能原因你想要pggem。但是我对我得到的错误感到非常困惑当我尝试在rvm下通过geminstall安装pg时。我已经非常明确地指定了所有postgres目录的位置可以找到但仍然无法完成安装:$envARCHFLAGS='-archx86_64'geminstallpg--\--with-pg-config=/opt/local/var/db/postgresql90/defaultdb/po

随机推荐