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 > 

  • 相关阅读:
    NOIP2012 借教室
    bzoj1816 扑克牌
    TYVJ1359 收入计划
    NOIP2015 跳石头
    易错点
    散列表
    数学模板
    12. 17 哈理工网络赛
    哈理工 网络赛
    三角形
  • 原文地址:https://www.cnblogs.com/sthinker/p/5816127.html
Copyright © 2011-2022 走看看