R语言with/within函数添加数据框到环境变量

欢迎来到医科研,这里是白介素2的读书笔记,跟我一起聊临床与科研的故事, 生物医学数据挖掘,R语言,TCGA、GEO数据挖掘。

R语言中的with/within函数 

介绍一个神操作
如何把数据框或列表作为环境,自由的调用其中的对象? 这样可以方便我们自由的使用数据框或列表中的内容 with和within 函数可以实现这个功能

举例说明-创建一个数据框

data<-matrix(rnorm(20),nrow = 4,ncol=5)
colnames(data)<-paste("a" ,1:5,sep ="")
rownames(data)<-paste("b",1:4,sep = "")
head(data)
##           a1         a2          a3         a4         a5
## b1 0.1407572 -1.0753243  1.05969022  1.7299476  2.0103886
## b2 0.9444536  0.8070661 -0.40638541 -0.0188307 -1.8951655
## b3 0.8461612  1.8689966  0.35246392 -0.2582239  1.0077248
## b4 0.5972781  0.4731699  0.04460225  1.4033448 -0.2314584
data<-as.data.frame(data)

直接调用失败

#cbind(a1,a2)
#a1+a2

使用with函数将data添加到环境

成功的直接调用,相当于这个变量已经添加到了当前环境 这样我们得以自由方便的调用数据框或列表中的变量 非常重要的技巧!

with(data,cbind(a1,a2))
##             a1         a2
## [1,] 0.1407572 -1.0753243
## [2,] 0.9444536  0.8070661
## [3,] 0.8461612  1.8689966
## [4,] 0.5972781  0.4731699
##
with(data,a1+a2)
## [1] -0.9345671  1.7515197  2.7151578  1.0704480


(0)

相关推荐