99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
2018-10-19 閱讀量: 2454
R語言中,attach與detach,及with的區(qū)別

問題描述

R語言中,對數據框中的數據的進行操作時,為了避免重復地鍵入對象名稱,可使用attach、detach或with。那么attach和with有什么區(qū)別呢?

解答

1、attach()是對what添加路徑索引,避免重復輸入what名稱。

attach(what, pos = 2L, name = deparse(substitute(what), backtick=FALSE), warn.conflicts = TRUE)

what:數據框或列表;
pos=2L:添加的路徑存儲的位置,一般默認即可。在對多個數據添加索引時,此位置會變成3L,4L,5L...detach()撤銷索引路徑時,會撤銷對應位置的索引儲存,具體例子見后;
name:不懂,遇見需要的情況再補充;
backtick=FALSE:反引號,經過測試,該參數固定為FALSE不可調,再調用索引時會用到;
warn.conflicts:是否打印警告。

2、detach()是撤銷attach()建立的路徑索引,常與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'

3、with()函數

with(data, expr, ...)

表達式,大括號{}之間的語句都只針對data執(zhí)行,但如果大括號中只有一句的話,則省略大括號。

>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

0.0000
0
關注作者
收藏
評論(0)

發(fā)表評論

暫無數據
推薦帖子