r-exams - 如何总结和打印所有练习的分数?
问题描述
我知道r-exam
我可以为练习分配分数,例如。通过expoints
练习的元数据。但是,我不知道要获得所有练习的总和。
作为一个特定的用例:考虑一个(根据正式的大学要求)必须包含(比如说)90 分的测试。所以,我需要通过测试的练习来跟踪已经包含的点数。
我不知道哪个变量跟踪这个分数(如果有的话)。
解决方案
你是对的,这个信息不是直接可用的,但是它可以从任何exams2xyz()
接口的输出中包含的元信息中提取出来。作为一个简单的例子,考虑:
library("exams")
set.seed(0)
exm <- exams2pdf(c("swisscapital.Rmd", "deriv.Rmd", "ttest.Rmd"),
n = 1, points = c(1, 17, 2))
现在exm
是一个只有 n = 1 个考试的列表,由三个练习组成,每个练习都提供了它的元数据(以及其他细节)。因此,您可以通过以下方式在第一次(也是唯一一次)考试中提取第二个练习的分数:
exm[[1]][[2]]$metainfo$points
## [1] 17
因此,要从第一次考试的所有练习中获得分数:
sapply(exm[[1]], function(y) y$metainfo$points)
## exercise1 exercise2 exercise3
## 1 17 2
当然,在这里它points
是明确设置的exams2pdf()
,因此是已知的。expoints
但是,如果通过单个练习中的标签设置点数,也可以使用相同的方法。
推荐阅读
- python - 正确重塑该数据框的最佳方法
- html - 删除 HTML 页面中的部分 HTML
- python - 安装 PyHook python 3.7 64 位
- google-sheets - 谷歌表格中是否有最大数量的命名范围
- python - 有人可以解释这个 Google Colab 代码中的不同索引吗?
- sql - 选择查询中带有计数的内部联接
- android - 当视频视图处于全屏状态时,RecyclerView 被重新创建
- chapel - 浮点数的`writeln()`的输出精度
- matplotlib - 为 Jupyter 笔记本全局设置轴标签
- python - 使用子进程调用从 python 调用 fortran 可执行文件