首页 > 解决方案 > 如何在 Moodle 问题中导入外部数据集?

问题描述

我想使用read.table()(或任何其他用于读取文件的函数)导入外部数据集,然后对其进行随机化或采样。该文件存储在包含练习的父文件夹内的子文件夹中*.rmd。我在一个 RStudio 项目中工作。我尝试将数据集放在文件夹结构的不同级别。使用相对路径不起作用,但绝对路径起作用。

我的文件夹结构是:

$home/project_name/exercises      # It contains the RMD files
$home/project_name/exercises/data # It contains data files that I want to process
$home/project_name/datasets       # this folder could eventually contain the dataset I want to process

为了使这段代码更便携,我想知道*.Rmd针织过程中的管理相对路径。

标签: r-exams

解决方案


练习被复制到一个临时目录并在那里处理。因此,最简单的选择是使用 . 将这些文件复制到临时目录include_supplement("file.csv")。默认情况下,这假定file.csv与练习本身位于同一目录中。如果它位于您可以使用的include_supplement("file.csv", recursive = TRUE)子目录中,然后递归搜索子目录以查找file.csv

使用后include_supplement(),复制的文件在本地可用,可以与练习一起处理,read.table()也可以作为补充文件包含在练习中。有关工作示例,请参见http://www.R-exams.org/templates/Rlogo/ 。但是,请注意,Rlogo模板明确指定了应从中复制文件的目录。如果该目录与练习或子目录相同,则不需要这样做。


推荐阅读