使用Miniforge构建数据科学环境

一、背景

最近,有不少公司因为员工在工作电脑上安装和使用Anaconda和Miniconda存在商业风险而禁用这两个软件,员工需要找到一个替代方案,Miniforge成为首选(对习惯使用conda管理python环境的同学)

但实际安装过程中,还是容易踩坑。因此我把我安装过程中记录下来,做一个详细的安装指南,希望能给相关同学一些参考帮助。

Anaconda、Miniconda、Miniforge三者的区别如下:

特性

Anaconda

Miniconda

Miniforge

商业使用许可

需要商业许可证

免费

免费

商业支持服务

提供商业支持(需付费)

可选择购买 Anaconda 支持服务

不提供官方商业支持

个人和教育使用

免费

免费

免费

预装包数量

大量预装包(1,500+ 个)

仅包含 Conda 和 Python

仅包含 Conda 和 Python

安装包大小

大(约 3-4 GB)

小(约 50 MB)

小(约 50 MB)

包管理频道

默认 Anaconda 频道

默认 Anaconda 频道

(因为这个可能会侵权)

默认 Conda-forge 频道

多平台支持

主要是 x86 和 x86_64

主要是 x86 和 x86_64

支持 x86, ARM, PowerPC

支持来源

Anaconda, Inc.

社区支持(可选 Anaconda 商业支持)

Conda-forge 社区支持

二、安装

2.1 Minforge3下载

官网下载速度稍慢(其实也还好,因为只有50M),推荐使用国内镜像进行下载。

国内镜像下载地址(推荐秒下):NJU Mirror

根据自己的系统环境选择下载版本,推荐不带版本号的最新版本。Mac系统注意是Intel x86的芯片还是ARM芯片(即M1~M4芯片)。比如我是M3芯片,选择版本如下:Miniforge3-MacOSX-arm64.sh

2.2 安装

安装文件下载好以后,打开终端,进入Miniforege3的安装源文件所在的目录。比如对Mac电脑,下载文件默认会保存到Downloads文件夹下,进入该文件目录:

cd downloads # 替换自己下载Miniforege3的安装源文件的目录

然后运行安装命令

bash Miniforge3-MacOSX-arm64.sh # 需要替换自己的安装文件名

这个时候会出现许多license提示,我们持续按Enter键就行,直到出现终极选择:是否同意上述license,输入“yes”即可开始安装

接着系统会跟你确认安装路径,确认后就开始安装了!

接下来很重要,也是我踩的一个坑。安装指引会询问你是否把conda添加到终端的系统路径,意思就是启动终端后,自动激活conda,此时用户名左边会自动带出(base)

这种状态不影响文件操作命令的(cd/ls等),所以建议选择“yes”(PS:我当时选择了no,然后出现了无法启动conda,试过了多种方法都无效,比如使用通过conda activate命令启动conda,从安装目录中~miniforege3/bin/conda启动等等,不知道是哪里出问题了,最后只能重新安装)

这样基本上就装好了。

三、切换数据源(repodata)

默认数据源是conda-forge,因为conda-forge服务器在国外,我们安装包的时候速度会很慢,所以建议切国数据内源。另外看到评论区有同学提到,不切换源还可能被云壳kill掉。

切换数据源需要修改condarc文件的内容,先运行下列两条命令:

conda config --set show_channel_urls yes

# 换其国内镜像源,以清华镜像为例

vim ~/.condarc

# 这里介绍Vim的使用方法,运行上述命令后,按“i”键进入“INSERT”模式(最后一行会显示“INSERT”),

# 然后编辑condarc中的内容(通过复制粘贴替换当前的内容),编辑完成后,按“ESC”键退出编辑模式,然后按“Shifit+:”,最后一行显示“:”时,输入wq(保存退出)

将condarc配置文件内容修改为如下:

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

修改后,进行如下config设置:

# 显示检索路径,每次安装包时会将包源路径显示出来

conda config --set show_channel_urls yes
conda config --set always_yes True

# 执行以下命令清除索引缓存,保证用的是镜像站提供的索引

conda clean -i



可以检查下配置是否生效。

1. 终端运行:conda config --show channels

这时会显示如下内容。可以看到,除了官方的conda-forge外,增加了一个default源,且排序靠前

channels:
    - defaults
    - conda-forge

2. 终端运行 conda config --show-sources命令,确认是不是我们刚刚设置的数据源地址,如果看到下面内容,则我们的配置生效了。

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

最后,在进行创建环境之前,最好对conda进行初始化,conda init 这个命令会帮忙自动配置环境变量(如 .bashrc 或 .bash_profile 等),省去手动配置的麻烦。

conda update conda
conda init

四、创建conda环境

接下来就可以创建新的conda环境,安装相应的数据包了,大功告成!

conda create -n {env_name} python=3.12 # 替换为自己的环境名称
conda activate {env_name}
conda install numpy pandas scipy matplotlib seaborn jupyter notebook jupyterlab # 把常用的包安装上

以上就是Miniforge详细安装过程,希望对大家有帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/940352.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MacOS下PostIn安装配置指南

PostIn是一款开源免费的接口管理工具, 下面介绍私有部署版本的MacOS下安装与配置。私有部署版本更适合有严格数据安全要求的企业,实现对数据和系统的完全控制。   1、MacOS服务端安装 Mac安装包下载地址:下载Mac安…

P6打卡—Pytorch实现人脸识别

🍨 本文为🔗365天深度学习训练营中的学习记录博客🍖 原作者:K同学啊 1.检查GPU import torch import torch.nn as nn import matplotlib.pyplot as plt import torchvisiondevicetorch.device("cuda" if torch.cuda.is_…

Electronjs+Vue如何开发PC桌面客户端(Windows,Mac,Linux)

electronjs官网 https://www.electronjs.org/zh/ Electron开发PC桌面客户端的技术选型非常适合已经有web前端开发人员的团队。能够很丝滑的过渡。 Electron是什么? Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入 Chromium 和 Node.…

内旋风铣削知识再学习

最近被有不少小伙伴们问到蜗杆加工的一种方式——内旋风铣削加工。关于旋风铣之前出过一篇《什么是旋风铣?》,简要介绍了旋风铣(Whilring)的一些基本内容。本期再重新仔细聊一聊内旋风这种加工方式,可加工的零件种类&a…

centos7下docker 容器实现redis主从同步

1.下载redis 镜像 docker pull bitnami/redis2. 文件夹授权 此文件夹是 你自己映射到宿主机上的挂载目录 chmod 777 /app/rd13.创建docker网络 docker network create mynet4.运行docker 镜像 安装redis的master -e 是设置环境变量值 docker run -d -p 6379:6379 \ -v /a…

基于Spring Boot的远程教育网站

一、系统背景与意义 随着互联网技术的飞速发展和普及,远程教育已成为现代教育体系中的重要组成部分。它打破了时间和空间的限制,让学习者可以随时随地进行学习。基于Spring Boot的远程教育网站正是为了满足这一需求而设计的,它利用互联网技术…

cf补题日记4

进度:6/40 我觉得我的思维还是太差了,多练思维题吧!!!!(燃起来 简直是思维题b题专题了,现在连b都做不出了吗(悲 原题1: Cats are attracted to pspspsps, …

WPF Binding 绑定

绑定是 wpf 开发中的精髓,有绑定才有所谓的数据驱动。 1 . 背景 目前 wpf 界面可视化的控件,继承关系如下, 控件的数据绑定,基本上都要借助于 FrameworkElement 的 DataContext 属性。 只有先设置了控件的 DataContext 属性&…

datasets笔记:两种数据集对象

Datasets 提供两种数据集对象:Dataset 和 ✨ IterableDataset ✨。 Dataset 提供快速随机访问数据集中的行,并支持内存映射,因此即使加载大型数据集也只需较少的内存。IterableDataset 适用于超大数据集,甚至无法完全下载到磁盘或…

【Python】【数据分析】深入探索 Python 数据可视化:Seaborn 可视化库详解

目录 引言一、Seaborn 简介二、安装 Seaborn三、Seaborn 的基本图形3.1 散点图(Scatter Plot)3.2 线图(Line Plot)3.3 条形图(Bar Plot)3.4 箱型图(Box Plot)3.5 小提琴图&#xff0…

如何构建机器学习数据集

1. 常见数据集网站 论文开源代码/数据集:Paperswithcodes 竞赛数据集:Kaggle Dataset 数据集搜索工具:Google Dataset Search HuggingFace:Hugging Face 魔塔:Model Scope 开源工具包自带:Pytorch, tensor…

EMQX V5 使用API 密钥将客户端踢下线

在我们选用开源的EMQX作为mqtt broker,我们可能会考虑先让客户端连接mqtt broker成功,再去校验客户端的有效性,当该客户端认证失败,再将其踢下线。例如:物联网设备连接云平台时,我们会将PK、PS提前烧录到设…

Ubuntu搭建ES8集群+加密通讯+https访问

目录 写在前面 一、前期准备 1. 创建用户和用户组 2. 修改limits.conf文件 3. 关闭操作系统swap功能 4. 调整mmap上限 二、安装ES 1.下载ES 2.配置集群间安全访问证书密钥 3.配置elasticsearch.yml 4.修改jvm.options 5.启动ES服务 6.修改密码 7.启用外部ht…

电子电气架构---基于PREEvision的线束设计工作流程优化

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 所谓鸡汤,要么蛊惑你认命,要么怂恿你拼命,但都是回避问题的根源,以现象替代逻辑,以情绪代替思考,把消极接受现实的懦弱,伪装成乐观面对不幸的…

【活动邀请·深圳】深圳COC社区 深圳 AWS UG 2024 re:Invent re:Cap

re:Invent 是全球云计算领域的顶级盛会,每年都会吸引来自世界各地的技术领袖、创新者和实践者汇聚一堂,分享最新的技术成果和创新实践,深圳 UG 作为亚马逊云科技技术社区的重要组成部分,将借助 re:Invent 的东风,举办此…

从零搭建纯前端飞机大战游戏(附源码)

目录 前言 一、游戏概览与技术选型 二、HTML 结构搭建和CSS样式美化 三、JavaScript 核心逻辑 1.变量声明与初始化 2.玩家飞机控制函数 3.射击与子弹管理函数 4.敌机生成与管理函数 5.碰撞检测与得分更新函数 6.游戏主循环与启动函数 四、完整代码 前言 在前端开发的…

【MAC】深入浅出 Homebrew 下 Nginx 的安装与配置指南

硬件:Apple M4 Pro 16寸 系统: macos Sonoma 15.1.1 Nginx 是一款高性能的 Web 服务器和反向代理服务器,广泛应用于全球各地的网站和企业应用中。本文将详细介绍如何在 macOS 环境下使用 Homebrew 安装、启动、管理以及优化配置 Nginx&#x…

简单了解图注意力机制

简单了解图注意力机制 如果对传统的图匹配的聚合方式进行创新的话,也就是对h这一个节点的聚合方式进行创新。 h i ( l 1 ) Norm ⁡ ( σ ( h i ( l ) α ∥ h i ( l ) ∥ m i ( l ) ∥ m i ( l ) ∥ ) ) , \mathbf{h}_{i}^{(l1)}\operatorname{Norm}\left(\sigm…

aosp15 - App冷启动

纸上得来终觉浅,绝知此事要躬行。 —— [宋]陆游 基于aosp_cf_x86_64_phone-trunk_staging-eng , 下面是具体断点位置。 第一部分,桌面launcher进程 com.android.launcher3.touch.ItemClickHandler onClickonClickAppShortcutstartAppShor…

arcgisPro相接多个面要素转出为完整独立线要素

1、使用【面转线】工具,并取消勾选“识别和存储面邻域信息”,如下: 2、得到的线要素,如下: