听说 R 可以在 jupyter notebook 上使用,昨天在本地 ubuntu22.04 操作系统上创建了 R 的虚环境,安装了 jupyter notebook 和 R kernel 。
前期已安装过 miniconda,代码如下:
参考这篇文章:Installing an updated R version (>=4.0) using conda
# 从 conda-forge channel 可以获得最新版本的 R, 所以先要添加 conda-forge channel
$conda config --add channels conda-forge
# 设定优先权,优先从conda-forge channel 而不是默认 channel 下载安装
$conda config --set channel_priority strict
# 检索可以下载的最新版
$conda search r-base
# 创建并激活虚环境
$conda create -n your_name_here python=3.X
$conda activate your_name_here
$conda install -c conda-forge r-base=4.X.X
#我下载的是 R 4.3.1
# 安装 jupyter notebook
$conda install jupyter
最后进入 R(直接命令行输入 R)并执行下面代码:
install.packages('IRkernel')
IRkernel::installspec()
全部安装完成过后,在激活 R 虚环境的情况下直接命令行输入 jupyter notebook 即可自动在浏览器打开 jupyter notebook(如果无法自动跳转,复制给出的链接可在浏览器搜索打开)。
我想要到用一个名为 clusterProfiler 的 R 包,参考这篇文章:Gene Set Enrichment Analysis with ClusterProfiler – NGS Analysis
首先需要安装这个包, 就在这里卡壳了,浪费了一下午。
library(BiocManager)
BiocManager::install("clusterProfiler")
提示要安装很多依赖包,有的能安上,有的就不行。
报错信息里总有这样一段:
------------------------- ANTICONF ERROR ---------------------------
Configuration failed because libcurl was not found. Try installing:
* deb: libcurl4-openssl-dev (Debian, Ubuntu, etc)
* rpm: libcurl-devel (Fedora, CentOS, RHEL)
* csw: libcurl_dev (Solaris)
If libcurl is already installed, check that 'pkg-config' is in your
PATH and PKG_CONFIG_PATH contains a libcurl.pc file. If pkg-config
is unavailable you can set INCLUDE_DIR and LIB_DIR manually via:
R CMD INSTALL --configure-vars='INCLUDE_DIR=... LIB_DIR=...'
--------------------------------------------------------------------
上网上搜说是要命令行安装 libcurl
执行这条命令:
$sudo apt-get install libcurl4-openssl-dev
安装好了还是不行,不知道下面这句说的是啥
If libcurl is already installed, check that 'pkg-config' is in your
PATH and PKG_CONFIG_PATH contains a libcurl.pc file.
最后参考这个解决了:
r - Unable To Install Tidyverse Due To Libcurl Issue - Stack Overflow
pkg-config 在 /usr/bin 下,检查 /usr/bin 是否在 PATH 中,在话命令行输入 pkg-config 会出现下面这条提示:Must specify package names on the command line,不在的话手动添加:在 ~/.bashrc 文件末尾加上 export PATH="/usr/bin:$PATH",然后重新 source 一下。
libcurl.pc 文件在 anaconda 或 miniconda 安装目录的 lib 目录的 pkgconfig 下,
以我的为例,手动在 ~/.bashrc 文件末尾添加 export PKG_CONFIG_PATH=/home/yc/miniconda3/lib/pkgconfig