我必须将我的 R 程序放在 CD-ROM 上。该 CD-ROM 还应包含原始数据集。要启动程序,必须设置工作目录以加载数据集。不幸的是,我不知道如何将工作目录设置为特定的 CD-ROM,以便我的主管只能运行程序而无需修改任何内容。有人有想法吗?
问问题
77 次
2 回答
0
我把我的评论变成了答案:
您需要一个只需单击 CD-ROM 上脚本上的“运行”按钮即可运行的 R 脚本。第一个想法是首先使用 CD-ROM 常用的驱动器号定义工作目录:
setwd("E:/project/") # remember that in R the slash is inverted for the paths
但是,CD-ROM 驱动器名称可能因计算机而异(D:、E:、...),并且可能无法正常工作。例如,您可以使用提示来询问这样的用户输入(请小心,因为无论您将其作为一个整体运行、逐行运行还是获取它,行为都会有所不同):
CDROM <- readline(prompt = "Specify the letter of the CR-ROM drive: ")
setwd(paste0(CDROM, ":/project/"))
如果您不希望用户执行任何操作,则 R 有一种方法可以自动查找活动脚本所在的目录(请参阅此处的这个问题,您会发现它并不像看起来那么简单)。它可能适用于以下行,但前提是用户获取脚本而不是运行它:
setwd(dirname(sys.frame(1)$ofile))
就个人而言,我只需在脚本开头添加一个注释行,告诉单击 R-studio 菜单(大多数人都使用它):
会话 > 设置工作目录 > 到源文件位置
希望能帮助到你!
于 2016-08-11T09:38:23.353 回答
0
您可以为此目的使用setwdchoose.dir
函数,或者如果您想以交互方式设置它,请尝试在setwd
.
于 2016-08-08T15:37:59.473 回答