R、python all in one jupyter

参考我之前的博客:

https://blog.csdn.net/weixin_62528784/article/details/142621762?spm=1001.2014.3001.5502

数据分析方面我R用的多,也很熟练,但耐不住这几年的趋势就是生信各种工具流上大幅向python迁移;

而python,我个人用得少,一般用jupyter;

前者用Rstudio作为IDE,后者用jupyter作为IDE,我很早就出过一篇博客谈到IDE all in one的问题,

也就是为了coding的效率提升,我尽量不想一会儿跑R打开rstudio或rstudio-server的8787端口,一会儿又跑回vscode的jupyter notebook上敲python;

之前出的那篇博客其实还是以R为主,是为了解决在旧版服务器上Rstudio-server没权限装,必须得给R配一个IDE的问题。

①但现在的问题就是需要统一IDE,做到all in one才能提高coding效率;

②最重要的是:

所有补全、AI辅助、copilot类的插件都在vscode中,在vscode中使用jupyter notebook+R kernel编程R的话,虽然没有Rstudio那样便利、管理操作变量,

但是换来的是更高效、更智能全面地使用一切vscode中能够AI的功能,所以是利大于弊

1,新建一个环境用于安装R-base,以及安装IRkernel

IRkernel 是 Jupyter Notebook 中的 R 内核,它允许我们在 Jupyter Notebook 中运行 R 代码。

可以在 R 中运行以下命令来安装 IRkernel

plain 复制代码
mamba create -n r-jupyter -y  r-base==4.4.2

#打开R安装:
install.packages('IRkernel')

IRkernel::installspec()  # 将 IRkernel 安装到 Jupyter Notebook 中

2,新建jupyter笔记本文件,然后依据自己需求选择内核

我们的目的当然是选择这个环境中配置好的R内核

当然也可以随时切换python内核

3,安装R包:

可以直接在notebook中安装,但是耗费时间会很长

其实可以直接在vscode下方的shell中打开该环境,然后手动安装

当然,在实际处理过程中:

无论是在cell中运行安装代码,还是在shell中进入对应环境进入R运行安装代码,基本上都很难安装;

所以还是在shell终端中使用conda安装R包:

参考:https://mp.weixin.qq.com/s/trAs7vh0N97sPQFl8W35gg以及我之前的博客

搜索格式见下:

plain 复制代码
mamba search 
#1,r-xxx包
#2,bioconductor-xxx包
#3,xxx包

以tidyverse包为例:

没搜到,再试试

找到了,可以直接安装:

在vscode下方的shell中成功,在jupyter的cell中试一试

也成功了

总之:安装R包在shell中用conda试试,其余按照R正常操作在jupyter中照常即可

4,运行时候会遇到的一些问题:

(1)

https://github.com/microsoft/vscode/issues/196740

参考之后可以通过调节pylance版本进行处理

更换old version即可

(2)参考:https://mp.weixin.qq.com/s/trAs7vh0N97sPQFl8W35gg

创建 .Rprofile 文件的目的是为了在 R 启动时自动配置环境,使得 R 能够识别和加载特定目录下安装的 R 包。以下是对每一行代码的详细解释:

  1. 打开或创建 .Rprofile 文件
bash 复制代码
vim ~/.Rprofile
复制代码
- **解释**:使用 `vim` 编辑器打开位于用户主目录下的 `.Rprofile` 文件。如果该文件不存在, `vim` 会自动创建一个新的文件。 `.Rprofile` 是一个 R 配置文件,在 R 启动时会自动执行其中的代码,用于设置用户自定义的环境配置。
  1. **定义自定义的 R 包目录变量 **.CUSTOM_LIB1
r 复制代码
.CUSTOM_LIB1 = "/share/Software/miniforge3/envs/R/lib/R/library"
复制代码
- **解释**:创建一个名为 `.CUSTOM_LIB1` 的变量,并将其值设为 `/share/Software/miniforge3/envs/R/lib/R/library`。这个路径指向一个特定的 R 包库目录,其中包含通过 `conda` 安装的 R 包(例如 `bioconductor-deseq2`)。
  1. **定义另一个自定义的 R 包目录变量 **.CUSTOM_LIB2
r 复制代码
.CUSTOM_LIB2 = "~/miniforge3/envs/R/lib/R/library/"
复制代码
- **解释**:创建另一个名为 `.CUSTOM_LIB2` 的变量,并将其值设为 `~/miniforge3/envs/R/lib/R/library/`。这个路径通常指向用户在本地环境中通过 `conda` 安装 R 包的位置。
  1. 更新 R 的包搜索路径
r 复制代码
.libPaths(c(.CUSTOM_LIB1, .CUSTOM_LIB2, .libPaths()))
复制代码
- **解释**:
    * `libPaths()` 是一个 R 函数,用于获取和设置 R 包的搜索路径。
    * `c(.CUSTOM_LIB1, .CUSTOM_LIB2, .libPaths())` 将 `.CUSTOM_LIB1` 和 `.CUSTOM_LIB2` 这两个自定义目录与现有的 R 包搜索路径合并。
    * `.libPaths(c(...))` 将合并后的路径设置为新的 R 包搜索路径。
- **目的**:通过将自定义的 R 包目录添加到 `.libPaths()` 中,确保 R 在启动时能够自动搜索这些目录,从而找到并加载通过 `conda` 安装的 R 包(如 `bioconductor-deseq2`)。这对于在网页端运行的 R 环境尤其重要,因为它确保了 R 能够访问所有必要的包,而无需手动指定包的位置。

总结

通过创建和配置 .Rprofile 文件,用户可以自定义 R 的启动行为,特别是指定额外的 R 包库路径。这在使用 conda 管理 R 包时尤为有用,因为它允许 R 在不同的环境中找到并加载必要的包,确保分析和计算能够顺利进行。

参考:
https://mp.weixin.qq.com/s/O0Xxlvr-R-lLkMOZUgTUAQ

https://mp.weixin.qq.com/s/trAs7vh0N97sPQFl8W35gg

相关推荐
wgyang20166 分钟前
我的第一个LangFlow工作流——复读机
python
Zhen (Evan) Wang13 分钟前
(豆包)xgb.XGBRegressor 如何进行参数调优
开发语言·python
我爱一条柴ya17 分钟前
【AI大模型】线性回归:经典算法的深度解析与实战指南
人工智能·python·算法·ai·ai编程
Qiuner23 分钟前
【源力觉醒 创作者计划】开源、易用、强中文:文心一言4.5或是 普通人/非AI程序员 的第一款中文AI?
人工智能·百度·开源·文心一言·gitcode
未来之窗软件服务34 分钟前
chrome webdrive异常处理-session not created falled opening key——仙盟创梦IDE
前端·人工智能·chrome·仙盟创梦ide·东方仙盟·数据调式
赶紧去巡山43 分钟前
pyhton基础【23】面向对象进阶四
python
AI街潜水的八角1 小时前
深度学习图像分类数据集—蘑菇识别分类
人工智能·深度学习·分类
旷世奇才李先生1 小时前
PyCharm 安装使用教程
ide·python·pycharm
飞睿科技1 小时前
乐鑫代理商飞睿科技,2025年AI智能语音助手市场发展趋势与乐鑫芯片解决方案分析
人工智能
许泽宇的技术分享1 小时前
从新闻到知识图谱:用大模型和知识工程“八步成诗”打造科技并购大脑
人工智能·科技·知识图谱