从R /考试中所有已生成的考试中生成出色的答案

时间:2020-04-15 08:18:51

标签: r r-exams

我是比利时根特大学学院的一名教授,我们正在就考试的组织方式“研究技术”进行集思广益(相当多的统计数字)。我们正在考虑为所有学生进行单独的考试,但我们希望使评分尽可能容易。

我们正在考虑通过R考试来生成n项考试,并允许学生使用google表单/ OneDrive表单或任何平台来回答,并通过学生的回答生成卓越的成绩。尽管每个问题的答案类型相同,但每个答案向量的内容将有所不同。

如果我们可以生成一个excel试卷以及每个生成的考试的所有答案,那就太好了:这样,我们只需要将学生提供的答案与R考试生成的答案相除即可。这样的功能是否可用或可能?

此致

Jens Buysse

1 个答案:

答案 0 :(得分:1)

您正在寻找的功能在R / exams中尚不可用,但是编写一点将其组合在一起的代码并不难。

所有exams2xyz()接口都返回一个考试列表,其中包含一个练习列表,其中包含(除其他事项外)每个问题的元信息。您可以将其提取并放入Excel工作表中。

您还可以使用exams_metainfo()提取器在R中显示信息。

作为一个简单的示例,请考虑:

library("exams")
set.seed(0)
exm <- exams2html(c("swisscapital.Rmd", "deriv.Rmd"), n = 3)

现在exm是n = 3项考试的列表,每项考试包含2个练习,然后可以提取其元信息。例如,第一次考试中的第一次练习:

exm[[1]][[1]]$metainfo$name
## [1] "Swiss Capital"
exm[[1]][[1]]$metainfo$solution
## [1] FALSE FALSE FALSE TRUE FALSE
exm[[1]][[1]]$metainfo$string
## [1] "Swiss Capital: 4"

要在R中显示此信息:

exams_metainfo(exm)
## exam1
## 1. Swiss Capital: 4
## 2. derivative exp: 55.25 (55.24--55.26)
## 
## exam2
## 1. Swiss Capital: 2
## 2. derivative exp: 1.79 (1.78--1.8)
## 
## exam3
## 1. Swiss Capital: 4
## 2. derivative exp: 46.73 (46.72--46.74)

您也可以通过print()方法获得一份考试:

print(exams_metainfo(exm), 2)
## exam2
## 1. Swiss Capital: 2
## 2. derivative exp: 1.79 (1.78--1.8)