R基础_函数R包

生信技能树学习笔记

  1. 函数:函数名称,形式参数(可省略),实际参数

  1. 当一个代码需要复制粘贴三次,就应该写成函数function()或使用循环

  1. 安装R包来源

  • Bioconductor: BiocManager::install("R包名称")

  • CRAN: install.packages("R包名称")

  • Github: devtools::install_github("作者名/R包名称")

  1. 一次安装,每次打开新的session都需要加载

  1. library( ) 是检查R包是否安装成功的标准

  • require 和 library 区别:都能用于加载R包

  • 1)如果未安装R包,library没安装会报错,但是require没安装只会warning不报错

  • 2)require 能返回逻辑值,as.logical(require(stringr)),加载成功是TURE,失败是FALSE

  1. 分情况讨论

if(!require(stringr))install.packages("stringr")

  1. .libPaths() 查看安装路径

  1. 安装R包时,如遇是否更新,首选n,不更新

  • R语言,能no就no,no不行再yes

  • Linux,需要yes就yes

  1. 更新所有包:update.packages() 不要频繁更新

  1. 右下角窗口Packages中有本地安装的所有R包

  1. 报错常见关键词

  • 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()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaoxiang学生信

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值