Create 'GIFT' file with short answer questions from a spreadsheet to be exported to LMS.
short_ans(data, questions, answers, categories, question_names = NULL,
output, verbose = TRUE)
dataframe or tibble of short answer questions data
name(string) or index(integer) of the questions column
a vector of names(strings) or indices of answers column(s)
name(string) or index(integer) of categories column if available, Default: NULL
name(string) or index(integer) of the questions names column. If NULL, it will be the first 40 letters of the question title, Default: NULL
string of .txt file name and path where the questions will be exported to.
If TRUE, the functions will print to the console the statistics of writing the output, Default: TRUE
None
Short answer question answers can be in single column or multiple columns. If an answer has not credit it will be given 100% credit automatically. For example if the answer is 'statistics', it will be equivalent to '%100%statistics'. While '%80%Data Science' answer will take 80% of the credit For further illustration, check GIFTrData.
A guideline for creating you questions data can be found below. Check the data GIFTrData
and GIFTrData_2
as example for formatted questions.
'MOODLE' itself supports basic markdown and HTML for questions formatting. So when formatting your data you can use HTML tags like <sub> and <sup>. Also you can use markdown **bold** or __bold__ and *italic* or _italic_ ...etc. However it is better a better practice to avoid using asterisk to avoid confusion with MCQ format. For more about the supported markdown see 'MOODLE' documentation.
GIFTrData[11,3]
for an example. For further details on LATEX, check 'MOODLE' docs.
a column contains question. This cannot contain empty values
answer(s) column(s). This may be multiple columns if you have multiple answers. If you mix single and multiple answer it is better to write the single answer in the first column. If you have only single answer MCQ and NO multiple answer MCQ, you can set the answers without asterisk in the first column of the answers columns. More details in the vignette and below.
a column specifying the type of question. The current supported questions are multiple choices, numerical entry, true or false and short answer questions. The should be named 'mcq' , 'num_q' , 'tf_q' and 'short_ans' respectively.
a column specifying categories and subcategories in the 'MOODLE' categories are important when you are preparing a quiz as you may want to specify certain proportions of inclusions. Categories and subcategories are spaced by forward slash like Categ1/subcateg1/subsubcateg1 ...etc.
a column specifying question names. So you can easily enter a certain question names by like certain ID or keyword to make the questions easily on the system. however you don't need to worry about that as automatically if not set, the first 40 letter are set a question name.
short_ans
function takes a dataframe with short answer questions and export a text file in 'MOODLE' GIFT format. The function automatically makes a short answer question either single or multiple with or without different credit weight according to your data format(check short answer questions formatting below). If you have additional column of question_type set to `short_ans` you can also use GIFTr function which wraps all question generating functions. See Vignette and GIFTrData for demos.
# NOT RUN {
data(GIFTrData)
#data with short answer question type
shortans_data <- GIFTrData[which(GIFTrData$question_type == "short_ans"),]
short_ans(data = shortans_data, questions = 3,
answers = c(4:8), categories = 1,
question_names = 2, output = file.path(tempdir(), "shortq.txt"))
#write file "shortq.txt" in tempdir()
# }
Run the code above in your browser using DataLab