R语言 attach()和detach()的使用

分类: R语言 |
在R语言中经常要处理数据框的数据,这时可以用attach函数连接之前所使用的数据框,然后计算数据框中行与行、列与列之间的数据,计算完成以后,可以用detach函数将这个连接去掉,详见例子:
> c
one
two
one
1
4
two
2
5
tree
3
6
> attach(c)
Error in attach(c) : 'attach'只适用于串列,数据框和环境
##这里要注意,attach函数只能用于串列、数据框等
> data.frame(c)##将上面的矩阵转变为数据框
one
two
one
1
4
two
2
5
tree
3
6
> z<-data.frame(c)
> z
one
two
one
1
4
two
2
5
tree
3
6
> attach(z)#连接数据框z,然后计算one列和two列的商,其实相当于r=zone/z" role="presentation" style="word-wrap: normal; margin: 0px; padding: 0px; display: inline; line-height: normal; word-spacing: normal; white-space: nowrap; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0px; min-height: 0px; border: 0px; position: relative;">two。
> r<-one/two
> r
[1] 0.25 0.40 0.50
> detach(z)##解除连接,可以看到就不能计算了
> r<-one/two
错误: 找不到对象'one'
> c
one
two
tree
> attach(c)
Error in attach(c) : 'attach'只适用于串列,数据框和环境
##这里要注意,attach函数只能用于串列、数据框等
> data.frame(c)##将上面的矩阵转变为数据框
one
two
tree
> z<-data.frame(c)
> z
one
two
tree
> attach(z)#连接数据框z,然后计算one列和two列的商,其实相当于r=zone/z" role="presentation" style="word-wrap: normal; margin: 0px; padding: 0px; display: inline; line-height: normal; word-spacing: normal; white-space: nowrap; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0px; min-height: 0px; border: 0px; position: relative;">two。
> r<-one/two
> r
[1] 0.25 0.40 0.50
> detach(z)##解除连接,可以看到就不能计算了
> r<-one/two
错误: 找不到对象'one'