Ubuntu中使用miniconda安装R和R包devtools

devtools/2025/1/13 10:39:11/

安装devtools环境包 

sudo apt-get install gfortran -y
sudo apt-get install build-essential -y
sudo apt-get install libxt-dev -y
sudo apt-get install libcurl4-openssl-dev -y
sudo apt-get install libxml++2.6-dev -y
sudo apt-get install libssl-dev -y
sudo apt-get install libxml2 -y
sudo apt-get install libxml2-dev -y
sudo apt-get install libgit2-dev -y
sudo apt-get install libfontconfig1-dev -y
sudo apt-get install libharfbuzz-dev libfribidi-dev -y
sudo apt-get install libudunits2-dev libgdal-dev libgeos-dev -y
sudo apt-get install libfreetype6-dev libpng-dev libtiff5-dev libjpeg-dev -y

下载安装miniconda

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
chmod +x Miniconda3-latest-Linux-x86_64.sh #给下载下来的安装文件添加执行权限
sudo bash Miniconda3-latest-Linux-x86_64.sh

切换到root用户,配置环境,vi ~/.bashrc 在最后添加下面内容

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

运行source ~/.bashrc  使配置生效

进入conda环境

source ~/.bashrc
conda

可通过修改conda源来提供下载速度。 

cat .condarc

channels:- https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/- https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/- https://mirrors.ustc.edu.cn/anaconda/pkgs/main/- https://mirrors.ustc.edu.cn/anaconda/pkgs/r/show_channel_urls: truedefault_channels:- https://mirrors.ustc.edu.cn/anaconda/pkgs/main- https://mirrors.ustc.edu.cn/anaconda/pkgs/r- https://mirrors.ustc.edu.cn/anaconda/pkgs/msys2custom_channels:conda-forge: https://mirrors.ustc.edu.cn/anaconda/cloudmsys2: https://mirrors.ustc.edu.cn/anaconda/cloudbioconda: https://mirrors.ustc.edu.cn/anaconda/cloudmenpo: https://mirrors.ustc.edu.cn/anaconda/cloudpytorch: https://mirrors.ustc.edu.cn/anaconda/cloudsimpleitk: https://mirrors.ustc.edu.cn/anaconda/cloud
更新conda
conda update -n base conda

安装mamba 

conda install mamba -n base -c conda-forge

因为Conda官方从2022年3月就提出比Conda更快解决方案-Libmamba。为了解决conda生态系统内部与增长相关的挑战,conda维护人员与合作伙伴Anaconda、Quansight和QuantStack一起在2022年12月引入了基于Mamba项目的新conda依赖项求解器。QuantStack,开发 mamba 和 libmamba;Quansight,将 libmamba 集成到 conda 中;和Anaconda,开发 conda 并管理整体工作。mamba是 conda 包管理器的 C++ 重新实现。

更新到Conda 23.10.0的时候,它们自动默认使用conda-libmamba-solver插件。 

官网解释:Conda 23.10.0: libmamba is now the default solver | conda.org

但我觉得还是要配置下求解器: 

安装并设置新的求解器

conda install -n base conda-libmamba-solver
conda config --set solver libmamba

创建R4.4环境

conda create -n r4.4# To activate this environment, use
#
#     $ conda activate r4.4
#
# To deactivate an active environment, use
#
#     $ conda deactivate

进入R4.4环境 

conda activate r4.4

使用mamba代替condao安装R 4.4

mamba install -y -c conda-forge r=4.4

 按R进入R语言界面安装devtools

install.packages("devtools")

 每次首次运行会让选择源,我会选20

如果安装发现源比较慢或有些包下载不下来,可以通过命令调出界面重新选择

chooseCRANmirror(graphics=FALSE)

 安装经过一段时间出现如下报错 

ERROR: dependencies ‘usethis’, ‘miniUI’, ‘pkgdown’, ‘rcmdcheck’, ‘roxygen2’, ‘rversions’, ‘urlchecker’ are not available for package ‘devtools’
Warning messages:
1: In install.packages("devtools") :installation of package ‘httpuv’ had non-zero exit status
2: In install.packages("devtools") :installation of package ‘ragg’ had non-zero exit status
3: In install.packages("devtools") :installation of package ‘xml2’ had non-zero exit status
4: In install.packages("devtools") :installation of package ‘shiny’ had non-zero exit status
5: In install.packages("devtools") :installation of package ‘pkgdown’ had non-zero exit status
6: In install.packages("devtools") :installation of package ‘roxygen2’ had non-zero exit status
7: In install.packages("devtools") :installation of package ‘rversions’ had non-zero exit status
8: In install.packages("devtools") :installation of package ‘urlchecker’ had non-zero exit status
9: In install.packages("devtools") :installation of package ‘miniUI’ had non-zero exit status
10: In install.packages("devtools") :installation of package ‘devtools’ had non-zero exit status

 退出R,使用下面命令安装,提示缺什么包就安装r-xxx包。

mamba install -y -c conda-forge r-usethis
mamba install -y r-httpuv
mamba install -y r-ragg
mamba install -y r-xml2
mamba install -y r-shiny
mamba install -y r-pkgdown
mamba install -y r-roxygen2
mamba install -y r-rversions
mamba install -y r-urlchecker
mamba install -y r-miniUI
R #进入R操作界面
install.packages("devtools")
 更新R包
install.packages("rvcheck")
rvcheck::update_all()

参考文档:Conda快速安装的解决方法(Mamba安装)_conda_TiYong-开放原子开发者工作坊


http://www.ppmy.cn/devtools/150131.html

相关文章

腾讯云大数据智能管家:AI驱动管理效能飞升

点击蓝字⬆ 关注我们 本文共计1241 预计阅读时长4分钟 在大数据时代&#xff0c;海量数据的产生给企业带来了新的机遇&#xff0c;也带来了复杂的管理挑战。如何高效利用数据资源、降低运维成本、提升系统性能成为每个企业的共同难题。腾讯云推出的大数据智能管家&#xff0c;以…

SQL多表联查、自定义函数(字符串分割split)、xml格式输出

记录一个报表的统计&#xff0c;大概内容如下&#xff1a; 多表联查涉及的报表有&#xff1a;房间表、买家表、合同表、交易表、费用表、修改记录表 注意&#xff1a;本项目数据库使用的是sqlserver&#xff08;mssql&#xff09;&#xff0c;非mysql。 难点1:业主信息&#…

性能优化案例:通过增加 shuffle 分区的数量来解决 PySpark 中的数据倾斜

在 PySpark 应用程序中&#xff0c;在随机操作期间&#xff0c;您可能会遇到由于数据倾斜而导致的性能下降&#xff0c;其中分区之间的数据分布不均匀可能会导致某些节点的处理时间比其他节点长得多。这可能会显著影响作业的执行时间&#xff0c;尤其是当数据集很大或某些键的数…

30天开发操作系统 第 12 天 -- 定时器 v1.0

前言 定时器(Timer)对于操作系统非常重要。它在原理上却很简单&#xff0c;只是每隔一段时间(比如0.01秒)就发送一个中断信号给CPU。幸亏有了定时器&#xff0c;CPU才不用辛苦地去计量时间。……如果没有定时器会怎么样呢?让我们想象一下吧。 假如CPU看不到定时器而仍想计量时…

cmake - build MS STL project

文章目录 cmake - build MS STL project概述笔记END cmake - build MS STL project 概述 MS在github上开源了VS IDE 用的STL实现。 想看看微软的测试用例中怎么用STL. 想先用CMake编译一个MS STL发布版出来。 笔记 CMake需要3.30以上, 拟采用 cmake-3.30.6-windows-x86_64.…

基于spingboot+html技术的博客网站

博主介绍&#xff1a;硕士研究生&#xff0c;专注于信息化技术领域开发与管理&#xff0c;会使用java、标准c/c等开发语言&#xff0c;以及毕业项目实战✌ 从事基于java BS架构、CS架构、c/c 编程工作近16年&#xff0c;拥有近12年的管理工作经验&#xff0c;拥有较丰富的技术架…

冒泡排序基础与实现

目录 1. 原理图 ​编辑 2. 什么是冒泡排序 3. 工作原理 3.1 具体步骤 3.2 时间复杂度 3.3 空间复杂度 4. 代码实现 5. 总结 1. 原理图 2. 什么是冒泡排序 冒泡排序&#xff08;Bubble Sort&#xff09;是一种简单的排序算法&#xff0c;它通过重复地遍历要排序的列表&am…

vue elementui 大文件进度条下载

下载进度条 <el-card class"box-card" v-if"downloadProgress > 0"><div>正在下载文件...</div><el-progress :text-inside"true" :stroke-width"26" :percentage"downloadProgress" status"…