一、函数
(1)形式函数和实际函数
(2)自定义函数
>自定义函数名称<-function(x,y,z=2){设定的函数}
> hpf<-function(x,y,z=2){(x+y)^z}
> hpf(2,3)
[1] 25
a) 自定义函数的名称是任意的,但最好不与已存在的函数重名
b) x、y都是形式函数,数值可以更改
c) z有默认的赋值,使用者如果如果没有重新定义会一直使用默认值
‼️当一个代码需要复制黏贴三次就应该写成循环或者定义函数
eg:
plot绘图:当需要绘制 plot(iris[ ,1],col=iris[ ,5]) ;plot(iris[ ,2],col=iris[ ,5]) ; plot(iris[ ,3],col=iris[ ,5]) ; plot(iris[ ,4],col=iris[ ,5])时,可以自定义函数方便快捷的完成。
> replot<-function(i){plot(iris[,i],col=iris[ ,5])}
> replot(1)
> replot(2)
> replot(3)
> replot(4)
(3)函数的默认值
函数的默认值是作者设定的,使用者不能改变默认值,但是可以使用自定义的值
help()或者 ??() 可以查看默认值, 例如sort()函数的默认值为decreasing=F
二、R包介绍
1)⚠️下载
原始方法:install.packages(" ") 适用于大部分的R包
生信相关包:BiocManager::install(" ") ‼️但是首先要下载BiocManager包,install.packages("BiocManager")
从github下载:devtools::install_github("开发者用户名/R包名称") ‼️要首先下载devtools包,install.packages("devtools")
2)R包的使用
每次使用前必须library() 相应的包不然会报错。或者直接输入包的名称后接" ::"可以直接选择相应函数
3)设置镜像
设置中科大镜像源:options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")
设置清华镜像源options(BioC_mirror="http://mirrors.tuna.tsinghua.edu.cn/bioconductor/")
或者点鼠标操作:
tools---global option---packages
4)常见报错
1、warning massage
warning是可以忽略的,上图的报错可以library一下依赖的程序包,Biobase、BioGenerics后,再次library(GEOquery)即可成功
2、package not availble for this version of R
可能原因1:包名写错
可能原因2:安装命令写错,install.packages和BioManager::install()都试一下
可能原因3:本机R语言版本与R包不符
可能原因4:包过时了
3、更新问题
all /some/ no +回车
能不更新就不更新,除非一直报错
4、加载a包,报错b包不存在
5、看到关键词connection,internet,url,404,http等
重新练联网,以上都是网络问题导致的
6、not writable/ permission debied
⚠️权限问题,用管理员身份打开R语言,重新下载。
5)R包安装成功的标志
补充:列出一个R包内的函数和数据
> ls("package:stringr")
[1] "%>%" "boundary" "coll"
[4] "fixed" "fruit" "invert_match"
[7] "regex" "sentences" "str_c"
[10] "str_conv" "str_count" "str_detect"
[13] "str_dup" "str_ends" "str_equal"
[16] "str_escape" "str_extract" "str_extract_all"
[19] "str_flatten" "str_flatten_comma" "str_glue"
[22] "str_glue_data" "str_interp" "str_length"
[25] "str_like" "str_locate" "str_locate_all"
[28] "str_match" "str_match_all" "str_order"
[31] "str_pad" "str_rank" "str_remove"
[34] "str_remove_all" "str_replace" "str_replace_all"
[37] "str_replace_na" "str_sort" "str_split"
[40] "str_split_1" "str_split_fixed" "str_split_i"
[43] "str_squish" "str_starts" "str_sub"
[46] "str_sub_all" "str_sub<-" "str_subset"
[49] "str_to_lower" "str_to_sentence" "str_to_title"
[52] "str_to_upper" "str_trim" "str_trunc"
[55] "str_unique" "str_view" "str_view_all"
[58] "str_which" "str_width" "str_wrap"
[61] "word" "words"
网友评论