r 语言c函数,R语言常用函数详解

R语言对于我们生信人员来讲,再熟悉不过,然而任何一门语言想要学好,必须经过常年的日积月累才可以做到,在这里,我列举R中常用的函数的用法, 供大家学习。

1.序列函数seq

用法: seq(form,to,length.out(or by))

seq(from=3,to=27,by=3)

[1] 3 6 9 12 15 18 21 24 27

seq(from=1,to=3,length=3)

[1] 1 2 3

2、重复函数rep

用法:rep(x,times,each)

rep(x=1,times=2)

[1] 1 1

rep(x=c(2,3),times=2)

[1] 2 3 2 3

rep(x=c(2,3) ,each=2)

[1] 2 2 3 3

3.排序函数sort

用法:sort(x,decreasing=T/F)

sort(x=c(1,3,2),decreasing=T)

[1] 3 2 1

4.长度函数length

length(x=c(1,2,3,4))

[1] 4

5.prob所有元素向量相乘

prob(c(1,2,3,4))

[1] 24

6.dim 矩阵维度,nrow行数,ncol列数

data=rbind(c(1,3,4),5:3,c(100,20,90),11:13)

dim(data)

4 3

nrow(data)

4

ncol(data)

3

dim(data)[2]

3

7.rbind行合并和cbind列合并

rbind(1:3,4:6)#行合并

1 2 3

4 5 6

cbind(1:3,4:6)

1 4

2 5

3 6

8.t转置

data=rbind(c(1,2,3),c(4,5,6))

data

1 2 3

4 5 6

t(data)

1 4

2 5

3 6

9.which确认TRUE的位置索引

which(c(T,T,T,F,F))

1 2 3

which(x=c(-1,1,2)>0)

2 3

data=c(-1,1,2,3,4,5)

data[which(data>0)]

1 2 3 4 5

data[-which(data>0)]

-1

10.cat 和 paste连接

cat(1,2,3,4)

1 2 3 4

#直接返回到控制台

paste(1,2,3,4)

'1 2 3 4'

#将内容连接后,返回最终的字符串作为可用的R语言对象

#这两个函数有一个可选参数sep

paste(c(1,2,4),'a',sep='+++')

"1+++a" "2+++a" "4+++a"#返回的是字符串

paste(c(1,2,3,4),rep(6,times=4),sep='')

"16" "26" "36" "46"

11.R语言的循环

#for 循环

for (条件){

do any code in here

}

#while循环

while(条件){

do any code in here

}

12.apply函数家族

apply(data,MAGERN=1/2,FUN)

#1表示行,2表示列,3表示层,4表示块

lapply(X, FUN, ...)

#通过对x的每一个元素运用函数,生成一个与元素个数相同的值列表

#X表示一个向量或者表达式对象,其余对象将被通过as.list强制转换为list

#例:

x

lapply(x,mean)

$a

[1] 5.5

$beta

[1] 4.535125

$logic

[1] 0.5

sapply(X, FUN, ..., simplify = TRUE, USE.NAMES = TRUE)

#X表示一个向量或者表达式对象,其余对象将被通过as.list强制转换为list

# simplify 逻辑值或者字符串,如果可以,结果应该被简化为向量、矩阵或者高维数组。必须是命名的,不能是简写。默认值是TRUE,若合适将会返回一个向量或者矩阵。如果simplify=”array”,结果将返回一个阵列。

sapply(k, paste,USE.NAMES=FALSE,1:5,sep="...")

[,1] [,2] [,3]

[1,] "a...1" "b...1" "c...1"

[2,] "a...2" "b...2" "c...2"

[3,] "a...3" "b...3" "c...3"

[4,] "a...4" "b...4" "c...4"

[5,] "a...5" "b...5" "c...5"

13.编写函数

function(){

}

eg:

zhao=funciton(x,y){

x+y

}

eg:

zhao=funciton(x=3,y){ # x设为默认值

x+y

}

  • 2
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值