天天看点

r语言判断字符是否相等_R语言生物信息大数据分析基础入门

r语言判断字符是否相等_R语言生物信息大数据分析基础入门
R是一个自由、免费、开放的软件。具有强大的数据处理能力,越来越多的科研工作者也开始使用R语言处理科研数据,发表论文、文章。
牛顿曾经说过:如果说我看得比别人更远些,那是因为我站在巨人的肩膀上。而R语言就是“巨人的肩膀”。但对于很多不是生信专业出身,却又需要 R 来统计及绘图的科研小伙伴来说,熟练使用 R 还是一项具有难度的挑战。今天介绍的R语言基础入门,希望能帮助到大家。
良好的R使用习惯
  • R支持中文,但不好!建议用全英文环境。
  • R语言具有严格的符号与语法控制,建议使用纯文本编辑工具编写R代码(注意中文符号)。
  • 使用R时,要先设定工作目录(getwd(), setwd())。
  • R可以使用Tab键自动补齐命令行。
设置R默认启动项
file.edit('~/.Rprofile')#bioconductoroptions(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")#CRANoptions(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/")
           
R包管理
install.packages("ggplot2")  安装R包library(ggplot2)  加载R包update.packages()  将所有的包进行更新
           
更新R版本
install.packages("installr")require(installr)updateR()
           
R中的数据对象与数据操作

赋值与注释

a = 2  # R中对变量的名字大小写敏感,a与A是不同的a a b c 
           

数据对象

  • 标量
  • 向量
  • 因子
  • 矩阵
  • 数组
  • 列表
  • 数据框

数据对象通常有三个属性:类型、值、变量名称

举例

  1. 标量
a a = 3.14m x TURE -> y> y[1]  TURE> x[1]  FALSE
           
  1. 向量
a 1,b "one",c # 使用函数rep(), seq(), ":"生成向量d 2,times=> d[1] 2 2 2 2e from=> e[1]  3  6  9 12 15 18 21f 1:> f [1]  1  2  3  4  5  6  7  8  9 10# 向量提取元素> a[1][1] 1> a[c(1,5)][1] 1 5> a[1:3][1] 1 2 3> a[a<5][1] 1 2 3 4  # 通过判断来提取元素> a[a>5][1]  6  7  8  9 10> a[-c(1,5)][1]  2  3  4  6  7  8  9 10   # 去除向量中的元素a[5] 12> a [1]  1  2  3  4 12  6  7  8  9 10  #替换元素a 12,> a [1]  1  2  3  4  5 12  6  7  8  9 10   # 添加元素
           
  1. 因子
# 因子是一种特殊类型的字符型向量# 创建一个字符向量或整数向量# 使用 factor()函数将其转为因子b "one",b > b[1] one   two   threeLevels: one three two
           
  1. 矩阵
矩阵是一个二维数组函数matrix()用于创建矩阵y 1:> y     [,1] [,2] [,3] [,4][1,]    1    6   11   16[2,]    2    7   12   17[3,]    3    8   13   18[4,]    4    9   14   19[5,]    5   10   15   20y 1:> y     [,1] [,2] [,3] [,4][1,]    1    2    3    4[2,]    5    6    7    8[3,]    9   10   11   12[4,]   13   14   15   16[5,]   17   18   19   20
           
  1. 数据框
patientID age status patientDate > patientDate  patientID age   status1         1  25     poor2         2  34 improved3         3  28     poor4         4  52     good> NCBIdata   Year BasePairs1  1991      11002  1992      12003  1993      13004  1994      14005  1995      15006  1996      16007  1997      17008  1998      18009  1999      190010 2000      2000# 按照条件提取> NCBIdata[NCBIdata$Year>1998,]   Year BasePairs9  1999      190010 2000      2000 NCBIdata[NCBIdata$Year>1990 & NCBIdata$BasePairs>1700,]   Year BasePairs8  1998      18009  1999      190010 2000      2000> NCBIdata[,c("Year")] [1] 1991 1992 1993 1994 1995 1996 [7] 1997 1998 1999 2000
           
  1. 列表
rec "LiMing",age=> rec$`name`[1] "LiMing"$age[1] 18$scores[1] 85 76 90
           
R中的基础函数及编程

函数形式: 函数(输入数据,参数=)

平均值: mean(x,trim=0,na.rm =FALSE,...)

线性模型: lm(y~x,data=test)

R字符数据操作函数

  • 字符合并
>paste("abc","bc")[1] "abc bc">paste("abc","bc",sep="")[1] "abcbc"
           
  • 字符取长度
>nchar("abcccc")[1] 6
           
  • 字符取子集
> substr("abcdef",2,3)[1] "bc"> substring("abcdef", 3)[1] "cdef"substring("abcdef", 1:6, 1:6)[1] "a" "b" "c" "d" "e" "f"> substr(rep("abcdef", 4), 1:4, 4:5)[1] "abcd" "bcde" "cd"   "de"  
           

编程基础

函数名 {

异常处理;

表达式(循环/判别);

return(返回值);

}

输入直角三角形的两个边,求斜边长rcal function(x,y){      z 2 + y^      result       return(result)}rcal(3,4)
           

流程控制 if

if (条件)表达式,或if (条件)表达式1 else 表达式2

p = 0.03if (p < = 0.05) {      print("p <= 0.05!")} else {      print("p > 0.05!")}x = 3y if (x==2) x 
           

条件与逻辑运算

  • 判断相等 x==y
  • 判断小于等于 x<=y
  • 判断大于等于 x>=y
  • 逻辑“与”运算 x && y
  • 逻辑“或”运算 x || y
  • 逻辑“非”运算 !x
  • 向量的逻辑“与” x & y
  • 向量的逻辑“或” x | y

循环 for,while

for (i in 1:10)  print (i)a for (i in 1:10){      a }> a[1] 10i while (i <10) { print (i); i 
           
数据的输入与输出
read.table()read.csv()write.table()write.csv()
           

免责声明:来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。本声明未涉及的问题参见国家有关法律法规,当本声明与国家法律法规冲突时,以国家法律法规为准。

• END •

↓更多往期精彩内容,点击【以下链接】

如何绘制出漂亮的SNP密度图

Galaxy生物医学领域最受欢迎的在线生物信息分析工具

R包【ggsci】各大期刊论文配图一步到位,再也不会被吐槽审美了

深圳南博屹生物科技有限公司诚邀生物领域科学家在我们的平台上,发表和介绍国内外原创的科研成果。

注:国内为原创研究成果或评论、综述,国际为在线发表一个月内的最新成果或综述,字数500字以上,并请提供至少一张图片。投稿者,请将文章发送至[email protected]

r语言判断字符是否相等_R语言生物信息大数据分析基础入门

南博屹相伴,科研不孤单