R Windows OS choose.dir() 文件选择器不会在工作目录打开

R Windows OS choose.dir() File chooser won't open at working directory

choose.dir函数参考页有一个例子:

choose.dir(getwd(), "Choose a suitable folder")

应该在工作目录中启动文件夹选择 window。但是,我只在 'My Computer' 处打开文件夹选择 window。此功能未按预期工作的原因可能是什么?

你是对的,你不应该使用 choose.dir(),因为它是 OS 特定的。我确实可以重现您报告的问题 - 我的猜测是它不会让您从属于 "Root" 用户的目录开始(无论在 Windows 中可能意味着什么),因为它似乎适用于其他目录,而不是 'Root':

 getwd()
 # [1] "C:/Users/Root/Documents"
 choose.dir(getwd(), "Choose a suitable folder") # leads to 'Computer'

 setwd("C:/datathon")
 choose.dir(getwd(), "Choose a suitable folder") # select subfolder 'scripts', works OK
 # [1] "C:\datathon\scripts"

有两个OS独立解;首先,就像之前 pointed out 一样,是使用 tcltk 包中的以下功能:

 library(tcltk)
 setwd('~')
 getwd()
 # [1] "C:/Users/Root/Documents"
 dir <- tclvalue(tkchooseDirectory())  # opens a dialog window in 'My Documents'

第二种是使用rChoiceDialogs包(需要rJava):

 library(rJava)
 library(rChoiceDialogs)
 getwd()
 # [1] "C:/Users/Root/Documents"
 jchoose.dir()  # opens the dialog window in "C:\Users\Root\Documents"