我刚刚开始学习 r 并且对课程中给出的以下问题感到困惑:
使用 dir.create() 和 file.path() 在当前工作目录中创建一个名为“testdir2”的目录和一个名为“testdir3”的子目录,所有这些都在一个命令中。
我无法接受我的答案,然后在网上找到了另一个提供答案的网站。这是另一个网站给出的答案:
dir.create(file.path('testdir2', 'testdir3'), recursive = TRUE)
Run Code Online (Sandbox Code Playgroud)
复制/粘贴此答案后,它仍然没有让我在课程中取得进步。答案有问题吗?
另外为什么我要使用 file.path 来创建文件夹。这样做是否更有意义:
dir.create("testdir2/testdir3", recursive = TRUE)
Run Code Online (Sandbox Code Playgroud)
使用 file.path 函数创建文件夹的目的是什么?
file.path()用于创建文件夹的目的是让您可以编写可供使用不同类型计算机的人使用的函数、脚本或包。不同类型的计算机或平台使用不同的文件分隔符。Unix 系统使用正斜杠:/. 这包括mac。Windows 系统使用反斜杠:\.
尝试查看,.Platform您会看到有许多变量可以参考以创建平台独立代码。 .Machine是另一个。
无论如何,这个想法是file.path(dir1, dir2, dir3)无论 R 运行在什么样的平台上,都可以创建一条有效的路径。
至于为什么自动分级机不接受您的答案,他们可能非常挑剔,尤其是在复制和粘贴时有时会发现隐藏的空白字符。有时他们会测试您的命令产生的输出,但有时(糟糕的)自动评分器只会测试输入,因此即使您的命令会产生相同的行为,如果它不完全相同,自动评分器也不会接受它。
小智 6
我让这段代码可以工作:
dir.create(file.path("testdir2","testdir3"), recursive = TRUE)
Run Code Online (Sandbox Code Playgroud)
"testdir2"我想你只需要在 and周围加上双引号"testdir3"。