生信技能树学习笔记
函数:函数名称,形式参数(可省略),实际参数
当一个代码需要复制粘贴三次,就应该写成函数function()或使用循环
安装R包来源
Bioconductor: BiocManager::install("R包名称")
CRAN: install.packages("R包名称")
Github: devtools::install_github("作者名/R包名称")
一次安装,每次打开新的session都需要加载
library( ) 是检查R包是否安装成功的标准
require 和 library 区别:都能用于加载R包
1)如果未安装R包,library没安装会报错,但是require没安装只会warning不报错
2)require 能返回逻辑值,as.logical(require(stringr)),加载成功是TURE,失败是FALSE
分情况讨论
if(!require(stringr))install.packages("stringr")
.libPaths() 查看安装路径
安装R包时,如遇是否更新,首选n,不更新
R语言,能no就no,no不行再yes
Linux,需要yes就yes
更新所有包:update.packages() 不要频繁更新
右下角窗口Packages中有本地安装的所有R包
报错常见关键词
connection,Internet,url,404,http,download
网络问题,校园网限制,镜像网站不行
warning / error : permission deny
管理员方式打开Rstudio后运行代码
functon()
#函数:函数名称,形式参数(可省略),实际参数
jimmy <- function(a,b,m = 2){
(a+b)^m
}
#m默认=2
jimmy(a = 1,b = 2)
jimmy(1,2)
jimmy(3,6)
jimmy(3,6,-2)
#复习:绘图函数plot()
par(mfrow = c(2,2)) #把画板分成四块,两行两列
#如果报错,把右下角画板拉大一点即可
x = c(2,5,6,2,9);plot(x)
x = seq(2,80,4);plot(x)
x = rnorm(10);plot(x)
x = iris$Sepal.Length;plot(x)
#思考:plot画iris的前四列?
plot(iris[,1],col = iris[,5])
plot(iris[,2],col = iris[,5])
plot(iris[,3],col = iris[,5])
plot(iris[,4],col = iris[,5])
#当一个代码需要复制粘贴三次,就应该写成函数或使用循环
jimmy <- function(i){
plot(iris[,i],col=iris[,5])#col 根据第5列定义颜色
}
jimmy(1)
jimmy(2)
jimmy(3)
jimmy(4)
jimmy(1:4)?
R包安装
# R包安装
#设置镜像 便于下载
options("repos"=c(CRAN="http://mirrors.tuna.tsinghua.edu.cn/CRAN/"))
options(BioC_mirror="http://mirrors.ustc.edu.cn/bioc/")
install.packages("tidyr")
install.packages('BiocManager')
BiocManager::install("ggplot2")
install.packages('devtools')
devtools::install_github("jmzeng1314/idmap1") #括号里写作者用户名加包名
# 清华镜像
# http://mirrors.tuna.tsinghua.edu.cn/CRAN/
# http://mirrors.tuna.tsinghua.edu.cn/bioconductor/
# 中科大镜像
# http://mirrors.ustc.edu.cn/CRAN/
# http://mirrors.ustc.edu.cn/bioc/
library(tidyr)
require(tidyr)
# 分情况讨论
if(!require(stringr))install.packages("stringr")
# 获取帮助
?seq
library(stringr)
browseVignettes("stringr")
ls("package:stringr")#需要先加载,列出R其中的函数
.libPaths()
heatmap::heatmap()