【问题标题】:Dropdown menu for multiple-choice questions with exams2moodle带有exams2moodle的多项选择题的下拉菜单
【发布时间】:2021-04-25 05:24:10
【问题描述】:

我使用来自 R/exams 的 exams2moodle() 使用 Sweave (Rnw) 问题。一切正常,除非我尝试将下拉问题用于 schoice 或 mchoice 问题。按照手册,我尝试使用选项cloze_mchoice_display = "MULTICHOICE",但这不起作用。

我在下面包含一个示例 Rnw 练习以及我的 R 代码。

\begin{question}
Which is a parameter?
\begin{answerlist}
\item population mean.
\item sample mean.
\item sample variance.
\item sample mode.
\item sample standard deviation.
\item population mode
\end{answerlist}
\end{question}

%% \expoints{5}
%% \extype{mchoice}
%% \exsolution{100001}
%% \exshuffle{5}

复制代码:

library("exams")
exams2moodle("cloze_dropdown.Rnw", n=3, name = "dropdown")
make_question_moodle(cloze_mchoice_display = "MULTICHOICE")

【问题讨论】:

    标签: dropdown moodle r-exams


    【解决方案1】:

    这里有几个问题:

    1. 如果您想设置cloze_mchoice_display 选项,您需要通过

      exams2moodle(..., cloze = list(cloze_mchoice_display = "..."))
      

      在内部,这会调用make_question_moodle() 代码。您不必自己这样做。

    2. 顾名思义,cloze_mchoice_display 仅用于完形填空练习中的 mchoice 元素(而不是独立的 mchoice 问题)。因此,在元信息中,您需要将extype 标签设置为cloze(而不是mchoice),并将exclozetype 标签设置为mchoice。在 Rnw 练习中:

      \extype{cloze}
      \exclozetype{mchoice}
      
    3. 下拉菜单只允许您选择一个答案,因此这确实适用于选择元素(实际上是完形填空问题的默认设置)。因此,您只能将MULTIRESPONSE 显示用于 mchoice 元素,而MULTICHOICE 仅用于显示 schoice 元素。

    因此,您需要决定是否要:

    • 一个选择题。然后我会在你的问题中保留它,但是你不能有一个下拉菜单。

    • 下拉菜单。然后你需要把它变成一个只有一个正确答案的选择题。如果放入完形填空,下拉菜单默认显示在exams2moodle(...)

    例如,当您使用下面的 Rnw 练习时,您将在 Moodle 中默认获得一个下拉菜单。

    <<echo=FALSE, results=hide>>=
    stat <- sample(c("mean", "mode"), 1)
    @
    
    \begin{question}
    Which is a parameter?
    \begin{answerlist}
    \item population \Sexpr{stat}.
    \item sample mean.
    \item sample variance.
    \item sample mode.
    \item sample standard deviation.
    \end{answerlist}
    \end{question}
    
    %% \expoints{5}
    %% \extype{cloze}
    %% \exclozetype{schoice}
    %% \exsolution{10000}
    %% \exshuffle{5}
    

    【讨论】:

    • 感谢您的回复。在 .R 文件中的第 1 号和 .Rnw 文件中的第 2 号中添加代码后,我收到以下错误消息: split.default(solutionlist, gr) 中的错误:第一个参数必须是向量
    • 抱歉,我忘了说你至少需要 R/exams 2.4-0(目前是 R-Forge 上的开发版本):install.packages("exams", repos = "https://R-Forge.R-project.org")。另见:stackoverflow.com/questions/64654616/…
    • 我已经用一些更具体的 cmets 更新了我的答案以供您设置。希望这能让您的示例现在正常工作。
    • 太棒了!你太棒了。有用。非常感谢您的时间和帮助。非常感谢。
    • 不客气。请单击左侧的复选标记接受答案。这样,您的问题就会在 StackOverflow 上被标记为已回答。
    猜你喜欢
    • 2018-04-01
    • 2021-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-13
    • 2020-02-06
    • 2019-03-24
    • 1970-01-01
    相关资源
    最近更新 更多