函数和R包

46 篇文章 6 订阅

函数

(1)形式参数与实际参数

(2)写函数的函数

  • 圆括号里是形式参数,及设定的默认值
  • 大括号里是jimmy函数的具体公式

  • 举例

(3)默认参数

复习

  • 绘图函数plot()
    • 数值型向量,以x的小标为横坐标,以x的数据为纵轴

    • 分别画iris里1,2,3,4列的数据

    • 以第5列提供的种类画出不同颜色

    • 写一个函数简化重复修改列数画4张图

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

R包

1.R包是什么

  • R程序包是多个函数的集合,具有详细的说明和示例
  • 也有的R包只有数据,没有函数
  • 包含R函数、数据、帮助文件、描述文件等。

2.为什么要安装R包?

    • 特定的分析功能,需要用相应的程序包实现。
    • 例如:作图包ggplot2,差异分析包limma等等。
  • 目的不是学会某个具体的R包,而是找所有R包使用的规律

3.R包来源(3种)

#(1)CRAN网站(https://cran.r-project.org/web/views/)          
install.packages()
install.packages("string")

#(2)Bioconductor(https://bioconductor.org/)   
#旧代码   BiocInstaller::biocLite()
BiocManager::install()
BiocManager::install("ggplot2")

#(3)github,()内写作者用户名+包名
devtools::install_github()
devtools::install_github("jmzeng1314/AnnoProbe")

  #网络问题经常导致github访问不了,可选择本地安装
  devtools::install_local("AnnoProbe-master.zip,upgrade=F)

CRAN、Bioconductor的R包本地安装方式 (一般除了很大的包,否则这两个网站不需本地安装)

不知道从哪里来的:搜一搜

安装后需要加载(加不加引号都可以)

library()
library(stringr)
require()
require(stringr)

4.(国内)R包安装前需设置镜像

R和Bioconductor主网站位于国外,选择国内的镜像可加快访问速度

镜像网站相当于主网站的副本,访问主网站存在障碍时,访问镜像网站也可以

国内镜像推荐

清华镜像(tuna,Beijing) The Comprehensive R Archive Network

Index of /bioconductor/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

中科大镜像(utst,Hefei)The Comprehensive R Archive Network

Index of /bioc/

方法一:tools-global option-packages

方法二:代码设置

options("repos"=c(CRAN="http://mirrors.tuna.tsinghua.edu.cn/CRAN/"))
options(BioC_mirror="http://mirrors.ustc.edu.cn/bioc/") 

5.R包安装和使用逻辑

(1)安装包→加载包→使用包里的函数

(2)已安装、不加载,快速使用

BiocManager::install()
dplyr::filter()

6.常见问题

(1)大片提示信息

(2)package not available

R语言版本99%的情况下没有问题,但它总是无辜被怀疑

(3)是否更新

    • n不行就a,千万不要s
    • 不回答就一直问。。。。

  • 学R语言要高冷,能no就no,no不行再yes;
  • 学linux要听话,让你yes你就yes

(4)加载A包,报错B包不存在

问是否更新的,“不存在”的是依赖包

依赖包的版本不够新

更新一个包:

  • 重新安装,
  • 或先删除再重新安装(session需重启)

更新所有的包: update.packages()

(5)报错中有connection或url、404、http

options(download.file.method='libcurl')
options(url.method='libcurl')
  • 校园网限制:换个网,手机热点
  • 镜像:没设置?镜像崩了?
  • 大胆假设,小心求证,试错几乎没有成本

满分操作:判断式安装

if(!require(string))install.packages("strings") #如果stringr这个包已经存在,就不安装;没安装就安装一下
  • 问题:成功的

如果实在不行就把英文的报错复制在必应或google上搜索解决办法

7.R包的使用场景

  • 某流程代码中用到某些包
  • 学绘图,用到ggplot2
  • 别人的代码套子集的数据,报错不会改
  • 大多数包里的函数规律一致,不需要单独学习,用到哪个函数学哪个函数
  • 少部分包里的函数自有语法,例如ggplot2,dplpr等

8.R包如何使用--获取R包帮助

(1)快速查看函数帮助文档

  • ?sd
  • help('sd')

(2)找R包介绍页面(直接搜)

(3)Vignettes:browseVignettes("stringr")

(4)少数R包有cheatsheets

RStudio Cheatsheets - RStudio

补充:列出一个包里都有那些函数或数据

ls("package:stringr")

R语言里的符号

; #把多句代码写在同一行(R语言是逐行跑代码的)

认清函数和数据

函数(括号前)

形式参数(函数中可省略的)

实际参数(括号内的)

数据框或矩阵: [,]取子集

列表 :eset [[]]取子集

文件名(以字符串形式出现,并且只能以能够识别字符型参数的函数的参数出现)

包 :library里

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

wangchuang2017

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

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

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

打赏作者

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

抵扣说明:

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

余额充值