在ubuntu20上面安装R4
时间:2022-07-23
本文章向大家介绍在ubuntu20上面安装R4,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
不得不说,现在各种软件系统的版本更新都好迅速!
一般来说,新安装的ubuntu系统都太干净,缺很多库文件,下面的代码先运行一波!
sudo apt install --fix-missing libcurl4-openssl-dev libxml2-dev libgdal-dev libssl-dev libglu1-mesa-dev libmagick++-dev libudunits2-dev
sudo apt install -y libcurl4-gnutls-dev
sudo apt install -y libxml2-dev
sudo apt install -y openssl
sudo apt install -y libssl-dev
安装最新版R语言
使用root权限(系统管理员)安装最新版的R,我们的ubuntu是20,所以选择focal这个代号,然后是cran40,全部的代码如下:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9
sudo add-apt-repository 'deb https://mirrors.ustc.edu.cn/CRAN/bin/linux/ubuntu focal-cran40/'
sudo apt update
sudo apt install r-base
实际上还需要使用root权限(系统管理员)安装一些R包。
安装一些R包
这里我们使用root权限(系统管理员):sudo R
options()$repos
options()$BioC_mirror
#options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")
options(BioC_mirror="http://mirrors.tuna.tsinghua.edu.cn/bioconductor/")
options("repos" = c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))
options()$repos
options()$BioC_mirror
# https://bioconductor.org/packages/release/bioc/html/GEOquery.html
if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install("KEGG.db",ask = F,update = F)
一般来说不会报错,然后继续安装更多的包:
BiocManager::install(c("GSEABase","GSVA","clusterProfiler" ),ask = F,update = F)
BiocManager::install(c("GEOquery","limma","impute" ),ask = F,update = F)
BiocManager::install(c("org.Hs.eg.db","hgu133plus2.db" ),ask = F,update = F)
options()$repos
install.packages('WGCNA')
install.packages(c("FactoMineR", "factoextra"))
install.packages(c("ggplot2", "pheatmap","ggpubr"))
library("FactoMineR")
library("factoextra")
library(GSEABase)
library(GSVA)
library(clusterProfiler)
library(ggplot2)
library(ggpubr)
library(hgu133plus2.db)
library(limma)
library(org.Hs.eg.db)
library(pheatmap)
BiocManager::install("ChAMP")
不得不说,有一些R包真的很难安装,搞了一个下午,比如ChAMP这个甲基化芯片数据处理包,如下;
我的空白ubuntu系统,全部运行完上述代码后,有327个包:
(base) jmzeng@biotrainee:/usr/local/lib/R/site-library$ du -h -d 1 |tail
404K ./ruv
3.2M ./biovizBase
4.5M ./colorspace
1.8M ./prettydoc
444K ./lazyeval
392K ./statmod
5.2M ./WGCNA
156K ./generics
8.0M ./urltools
2.9G .
配置网络服务(选修)
sudo apt install -y nginx curl
同时需要设置好 /var/www/html 文件夹权限,就是需要增加一个 www-data 的用户组,里面包含的用户都是可以访问的。
sudo chgrp -R www-data /var/www
sudo usermod -a -G www-data jmzeng
# sudo usermod -a -G www-data ubuntu
sudo chmod -R 2770 /var/www/html
同时,也需要管理ubuntu的端口,Nginx安装后,理论上IP可以在浏览器打开访问,但是要求网页端口80的开通的。
ufw是一个主机端的iptables类防火墙配置工具
sudo ufw enable # 打开防火墙
sudo ufw allow 80 ## 打开端口
sudo ufw status ### 查看防火墙状态
sudo ufw allow 8787 ## 打开端口
服务器那边打开端口才可以。
安装rstudio-server
参考:https://rstudio.com/products/rstudio/download-server/debian-ubuntu/
一定要看清楚ubuntu系统的版本哦!
sudo apt-get install gdebi-core
wget https://download2.rstudio.org/server/bionic/amd64/rstudio-server-1.3.1056-amd64.deb
sudo gdebi rstudio-server-1.3.1056-amd64.deb
在这个版本上面,我浪费了至少两个小时。安装shiny和rsutdio的服务器,官网找到最新版咯
- https://www.rstudio.com/products/rstudio/download-server/
- https://www.rstudio.com/products/shiny/shiny-server/
自己寻找地址啦!
配置shiny权限(选修)
这个呢,基本上只有你真正需要开发自己的网页工具,才用得上哈!
sudo systemctl restart shiny-server
可能需要经常重启,安装成功之后查看端口开放情况:netstat -tln
配置用户组:
sudo groupadd shiny
sudo chgrp -R shiny /srv/shiny-server/
sudo usermod -a -G shiny jmzeng
一些自己开发的网页小工具,可以统一存放在 /srv/shiny-server/ 目录。
sudo chmod -R 2775 /srv/shiny-server/
cd /srv/shiny-server/
mkdir -p plot123
cd plot123
mkdir lineplot dotplot scatterplot boxplot barplot histplot pieplot density
mkdir violinplot qqplot errorplot
mkdir veen upsetr heatmap circos volcano
mkdir genestructure
cd /srv/shiny-server/
mkdir analysis
cd analysis
mkdir deg det deu enrich gsea gsva wgcna timeseries pca tsne
mkdir kmsurvival cox forest
cd /srv/shiny-server/
mkdir database
cd database
mkdir tcga icgc ccle gtex encode roadmap
mkdir ncbi ucsc ensembl
cd /srv/shiny-server/
mkdir paper
cd paper
- E路阳光
- 解决微信公众平台IP白名单
- 基于Cef内核的多店铺登录器(含源码)
- Android解析ClassLoader(二)Android中的ClassLoader
- 近期开发中遇到的问题总结
- Apache Spark中的决策树
- 数据结构是哈希表(hashTable)
- 【翻译】在Visual Studio中使用Asp.Net Core MVC创建你的第一个Web API应用(一)
- 基于JQuery EasyUI的WebMVC控件封装(含源码)
- Android系统源码分析-JNI
- EntityFrameWork实现部分字段获取和修改(含源码)
- 基于Ado.Net的日志组件
- Do you kown Asp.Net Core -- 配置Kestrel端口
- 【翻译】在Visual Studio中使用Asp.Net Core MVC创建第一个Web Api应用(二)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- JBrowse安装配置的一些教程
- 对不起,网上找的Redis分布式锁都有漏洞!
- 打卡群刷题总结0722——颜色分类
- 为什么Python没有main函数?
- 构建对象检测模型
- OpenCV4.4 + YOLOv4 真的可以运行了…..
- 基于分类任务的信号(EEG)处理
- 面试:如何决定使用 HashMap 还是 TreeMap?
- 有理有据:一篇来自前端同学对后端接口的吐槽!
- 【从0到1学算法】选择排序
- 【从0到1学算法】大O表示法
- 锦囊篇|一文摸懂AsyncTask
- 在Substrate链上跑Solidity ERC20智能合约
- 【Nginx】实现负载均衡、限流、缓存、黑白名单和灰度发布,这是最全的一篇了!
- 对称二叉树