【发布时间】:2018-05-23 19:24:35
【问题描述】:
我有一个来自回忆任务的数据框,参与者从他们之前学习的列表中回忆尽可能多的单词。这是数据的模型。每一行是一个主题,每一列(w1-w5)是一个回忆的单词:
df <- data.frame(subject = 1:5,
w1 = c("screen", "toad", "toad", "witch", "toad"),
w2 = c("package", "tuna", "tuna", "postage", "dinosaur"),
w3 = c("tuna", "postage", "toast", "athlete", "ranch"),
w4 = c("toad", "witch", "tuna", "package", "NA"),
w5 = c("windwo", "mermaid", "NA", "NA", "NA")
)
这会产生以下数据框:
subject w1 w2 w3 w4 w5
1 1 screen package tuna toad windwo
2 2 toad tuna postage witch mermaid
3 3 toad tuna toast tuna NA
4 4 witch postage athlete package NA
5 5 toad dinosaur ranch NA NA
我想将生成的每个单词(第 w1 - w5 列)与正确单词的列表相匹配,这些单词是:
words <- c("screen", "package", "tuna", "toad", "window",
"postage", "witch", "mermaid", "toast", "dinosaur")
我只想为拼写正确且不重复的单词加分。例如,对于上面的数据,我希望得到一个如下所示的数据框:
subject nCorrect
1 1 4
2 2 5
3 3 3
4 4 3
5 5 2
主题 1 将获得 4 分,因为他们拼错了一个单词。
主题 2 将获得 5 分。
受试者 3 将获得 3 分,因为他们重复了金枪鱼并且少了一个单词。
主题 4 将获得 3 分,因为他们有一个错误的单词和一个缺失的单词。
主题 5 将获得两分,因为他们有一个错误的单词和两个缺失的单词。
【问题讨论】: