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"
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"