據我所知,在R鍵設置我的工作目錄,我可以這樣做:指定與setwd目錄()
setwd("~/dir1/dir2/mydir")
如果MYDIR是一個獨特的目錄名稱,是否有辦法沒有說明DIR1指定的工作目錄/ dir2?
感謝
據我所知,在R鍵設置我的工作目錄,我可以這樣做:指定與setwd目錄()
setwd("~/dir1/dir2/mydir")
如果MYDIR是一個獨特的目錄名稱,是否有辦法沒有說明DIR1指定的工作目錄/ dir2?
感謝
Sys.glob
你想要做什麼:
setwd(Sys.glob("~/*/*/mydir"))
如果你不知道它有多深嵌套,則可以使用list.files
或dir
:
list.files(path="~", pattern="mydir", all.files=TRUE, full.names=TRUE,
recursive=TRUE, ignore.case=FALSE, include.dirs=TRUE)
你應該能夠構造一個允許任意數量的在找到「mydir」之前先縮減。不過,我不想把它放在我的設備上。我需要用'list.dirs()'中斷我的測試。 –
我不確定... http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_13_03似乎不允許加括號的子表達式(例如〜/(* /) + MYDIR「' –
我解釋你的問題是想讓電腦自動找到目錄,這可能會很困難。你必須使用某種系統工具來搜索目錄(在Windows和MacOS vs Linux上,目錄可能不同,可能不一樣,也可能不存在)。在一個正確設置的Linux系統上,你可能會使用像'setwd(system(「locate mydirname」,intern = TRUE)'' –