如何手动评分考试/问题?

Seb*_*uer 4 r r-exams

我想做什么:

我想r-exams在以下过程中使用:

  1. 向学生提供 pdf 格式的电子考试(使用 exams2pdf(..)
  2. 让学生上传带有答案的excel文件
  3. 使用 (using eval_nops(...))为答案评分

我的问题:

调用该函数eval_nops()是手动评分问题的首选方法r-exams吗?

如果没有,更喜欢哪种方式?

我尝试过的:

我知道该exam2nops()功能,并且我知道它会返回一个.RDS存储正确答案的文件。因此,我基本上有我需要的东西。然而,我发现这个过程不是很简单,因为正确的答案被埋藏在 RDS 文件的深处。

Ach*_*eis 5

概述

您是对的,除了标准学习管理系统 (LMS)(如 Moodle 或 Canvas 等)之外,没有现成的系统来管理/评分考试。R/考试确实为评分提供了一些构建模块,尤其是exams_eval(). 这可以用谷歌表单等工具来补充。下面我从“硬事实”开始,exams_eval()尽管这有点技术性。但随后我也提供了一些关于此类方法的评论。

使用 exams_eval()

让我们考虑一个具体的例子

eval <- exams_eval(partial = TRUE, negative = FALSE, rule = "false2")
Run Code Online (Sandbox Code Playgroud)

表明您想要多项选择题的部分学分,但每个项目的总分不得变为负数。正确勾选的框会产生 1/#correct 点和错误勾选的框 1/#false。唯一的例外是只有一个错误项目(这将取消所有点)然后使用 1/2。

结果对象eval是一个包含输入参数 ( partial, negative, rule) 和三个函数checkanswer(), pointvec(), 的列表pointsum()。想象一下你有正确的答案模式

cor <- "10100"
Run Code Online (Sandbox Code Playgroud)

正确和错误勾选框的相关点将是:

eval$pointvec(cor)
## pos neg
## 0.5000000 -0.3333333
Run Code Online (Sandbox Code Playgroud)

因此,对于以下答案模式,您会得到:

ans <- "11100"
eval$checkanswer(cor, ans)
## [1] 1 -1 1 0 0
eval$pointsum(cor, ans)
## [1] 0.6666667
Run Code Online (Sandbox Code Playgroud)

后者仍需要乘以分配给该练习的总分。对于数字答案,您只能得到 100% 或 0%:

eval$pointsum(1.23, 1.25, tolerance = 0.05)
## [1] 1
eval$pointsum(1.23, 1.25, tolerance = 0.01)
## [1] 0
Run Code Online (Sandbox Code Playgroud)

同样,字符串答案要么正确要么错误:

eval$pointsum("foo", "foo")
## [1] 1
eval$pointsum("foo", "bar")
## [1] 0
Run Code Online (Sandbox Code Playgroud)

运动元信息

要获取给定练习的相关信息,您可以从所有exams2xyz()接口返回的嵌套列表中访问元信息:

x <- exams2xyz(...)
Run Code Online (Sandbox Code Playgroud)

例如,您可以将-th 练习metainfoi-th 随机复制提取j为:

x[[i]][[j]]$metainfo
Run Code Online (Sandbox Code Playgroud)

这包含正确的$solution$type、 和$tolerance等等。当然,这有点长并且不方便交互输入,但应该很容易以编程方式循环。nops_eval()例如,这是基于.rds完全包含x.

在没有完整 LMS 的情况下管理考试

我在这里通常的建议是尝试利用你大学的服务(当然,如果有的话)。是的,带宽/稳定性等可能存在问题,但如果您运行自己的系统(去过那里,做过),您可以拥有所有相同的问题。具体来说,可在此处获得有关邮寄的 Moodle 与 PDF 考试的讨论:

如果我要在 LMS 之外提供我的考试,我会使用 HTML,而不是 PDF。在 HTML 中嵌入附加信息(数据、链接等)比在 PDF 中容易得多。还可以更轻松地在移动设备上查看 HTML。

为了收集答案,一些 R/exams 用户使用 Google 表单,例如:https : //R-Forge.R-project.org/forum/forum.php?thread_id=34076&forum_id=4377&group_id=1337。其他人对使用learnrwebex为此感兴趣:http : //www.R-exams.org/general/distancelearning/#going-forward

不过,关于隐私,如果其中任何一项比使用大学的 LMS 更好,我会感到非常惊讶。