zoukankan      html  css  js  c++  java
  • R语言-attach、detach、with

     

    在R语言中,对于串列,数据框中的数据的进行操作时,为了避免重复地键入对象名称,可使用attach或with。

    1、attach()

    假设data.frame包含列name,age

    attach(onedata.frame)后就可以引用直接引用onedata.frame中的元素了,例如:

    (1)创建测试数据框

    > name<-c("Zhangshan","Lisi","Wangwu","Zhaoliu")

    > age<-c(20,30,40,50)

    > onedata.frame<-data.frame(name,age)

    > onedata.frame       

        name age

    1 Zhangshan  20

    2      Lisi  30

    3    Wangwu  40

    4   Zhaoliu  50

    (2)attach测试

    > attach(onedata.frame) The following objects are masked _by_ .GlobalEnv:
        age, name
    > age [1] 20 30 40 50

    > name [1] "Zhangshan" "Lisi"      "Wangwu"    "Zhaoliu"   > detach(onedata.frame)
    > name 错误: 找不到对象'name'

    可见,访问数据框中的元素只在命令attach()和detach()之间可以搜索到。

    2、with()

    使用with,类似Javascript中的with,在括号中有效。例如:

    >with(onedata.frame,{     name })

    [1] Zhangshan Lisi      Wangwu    Zhaoliu  

    Levels: Lisi Wangwu Zhangshan Zhaoliu 用with有个问题就是里面设置的变量在外部无法访问:

    > with(onedata.frame,{name1<-name})

    > name1 错误: 找不到对象'name1'


    解决办法就是使用<<-赋值符号,例如:

    > with(onedata.frame,{name1<<-name})

    > name1 [1] Zhangshan Lisi      Wangwu    Zhaoliu  

    Levels: Lisi Wangwu Zhangshan Zhaoliu > 

  • 相关阅读:
    Android开发之《内存对齐》
    Android开发之《libyuv库的使用》
    Android开发之《ffmpeg解码mjpeg视频流》
    Android开发之《USB Camera》
    Cenos配置Android集成化环境, 最终Centos libc库版本过低放弃
    (警告)不要轻易删除libc.so.6,以及误删恢复
    Android开发之《硬件加速》
    EPANET中的typedef使用
    面试
    NSString copy && strong
  • 原文地址:https://www.cnblogs.com/sthinker/p/5816127.html
Copyright © 2011-2022 走看看