2014-12-03 52 views
0

好吧,我今天感覺很蠢。試想一下:如何在指定的環境中正確使用ls()?

ppenv<-new.env(parent=.GlobalEnv) 
assign('.dirhist','/Users/cgw/Rgames',ppenv) 
ls(envir=ppenv) 
character(0) 
exists('.dirhist',envir=ppenv) 
[1] TRUE 
get('.dirhist',envir=ppenv) 
[1] "/Users/cgw/Rgames" 

所以我的問題是:如何確定我的環境ppenv,即存在哪些對象在那裏的內容?

+2

我發現'with(e,ls())'很好地工作。 – 2014-12-03 16:15:16

回答

1

問題出在對象名稱以.開頭。使用參數all.names = TRUE

ls(envir = ppenv, all.names = TRUE) 

ls幫助頁面:

all.names 邏輯值。如果爲TRUE,則返回所有對象名稱。如果FALSE,則以。開頭的名稱。被省略。

+0

謝謝,就像我說過的 - 我感覺很蠢,而且你肯定證實了我的陳述:-) – 2014-12-03 16:11:49

+0

@CarlWitthoft我不認爲這是對你的陳述的驗證。 ;-) – 2014-12-03 16:13:55