Предположим, у меня есть следующая таблица данных с ответами на два разных теста, red
и blue
:
library(data.table)
dt <- data.table(
class = rep("math", 4),
test = c("red", "red", "blue", "red"),
student = 1:4,
q1_answer = c("a", "a", "b", "a"),
q2_answer = c("b", "c", "b", NA),
q3_answer = c("c", "c", "c", NA)
)
# dt
# class test student q1_answer q2_answer q3_answer
#1: math red 1 a b c
#2: math red 2 a c c
#3: math blue 3 b b c
#4: math red 4 a <NA> <NA>
Ключи ответов для тестов blue
и red
- это следующее:
red_answer_key <- c("a", "b", "c")
blue_answer_key <- c("b", "c", "d")
Как мне получить баллы по двум тестам, чтобы в следующей таблице был столбец score
?
# class test student q1_answer q2_answer q3_answer score
#1: math red 1 a b c 3
#2: math red 2 a c c 2
#3: math blue 3 b b c 1
#4: math red 4 a <NA> <NA> 1 # count NA as incorrect