Создание нового столбца фрейма данных, который суммирует несколько правильных ответов - PullRequest
1 голос
/ 14 июня 2019

Мой фрейм данных содержит ответы, предоставленные моими студентами на онлайн-экзамене / тесте, и я помогу с анализом одного из вопросов.Немного сложно объяснить, как устроен вопрос, но я сделаю все возможное.Каждый участник был помещен в два погодных сценария (которые были выбраны случайным образом из 5 возможных сценариев: шторм, ветер, постоянный, влажный и слабый).

Затем их попросили указать, применимы ли 6 различных методов передвижения в двух из них.сценарии.В целях упрощения методы передвижения были следующими (Chute, Lee, Early, Wait48, Solar & Conn).

Всем студентам было предложено указать, насколько применима каждая техника передвижения в каждом погодном сценарии, и варианты, которые онипришлось выбирать между: нет) не знаю 0) не применимо 1) в некоторой степени применимо 2) в высшей степени применимо.

Для каждого из 5 погодных сценариев существует 1 техника передвижения, которая очень применима, кроме мокрой, которая имеет 2 техники, которые очень применимы.

Ниже приведены правильные ответы, которые очень применимы.: Storm: Wait48, Ветер: Lee, Постоянный: Conn, Wet: Early & Solar, Ldry: Chute

Меня интересует вопрос о том, как мне создать новую колонку в моем DF, чтобыподсчитывает, получил ли каждый учащийся (каждый ряд) ни одного из правильных «хорошо применимых», получил 1 правильный или получил 2?

# Example results table
# Note the numbers relate to the student's responses as follows:
# 0= Not applicable, 1= Somewhat Applicable, 2= Highly applicable, NA = 
  Don't know
WeatherScen1 <- c('storm', 'persistent', 'wet', 'wet', 'storm', 'wind', 
'Ldry')
Solar1 <- c(0, 1, 2, 0, 0, NA, 2)
Conn1 <- c(1, 2, 0, 2, 0, NA, 1)
Chute1 <- c(1, 1, 1, 2, 2, NA, 1)
Early1 <- c(0, 1, 2, 1, 1, NA, 2)
Wait481 <- c(2, 0, 0, 2, 1, NA, 2)
Lee1 <- c(1, 1, 1, 0, 1, NA, 1)
WeatherScen2 <- c('wet', 'wet', 'wind', 'storm', 'Ldry', 'storm', 
'persistent')
Solar2 <- c(2, 2, 0, 0, 0, 1, 0)
Conn2 <- c(0, 0, 1, 1, 0, 1, 2)
Chute2 <- c(1, 1, 1, 1, 1, 1, 1)
Early2 <- c(2, 2, 1, 1, 1, 1, 0)
Wait482 <- c(0, 0, 1, 1, 1, 2, 0)
Lee2 <- c(1, 1, 2, 1, 1, 1, 0)

WeatherScenResp <- data.frame(WeatherScen1, Solar1, Conn1, Chute1, Early1, 
Wait481, Lee1, WeatherScen2, Solar2, Conn2, Chute2, Early2, Wait482, Lee2)
View(WeatherScenResp)

Id WeatherScen1 Solar1 Conn1 Chute1 Early1 Wait481 Lee1... 
1  Storm        0      1     1      0      2       1   ... 
2  Persistent   1      2     1      1      0       1   ... 
3  Wet          2      0     1      2      0       1   ...
4  Wet          0      2     2      1      2       0   ... 
5  Storm        0      0     2      1      1       1   ... 
6  Wind         NA     NA    NA     NA     NA      NA  ... 
7  Ldry         2      1     1      2      2       1   ... 


...WeatherScen2 Solar2 Conn2 Chute2 Early2 Wait482 Lee2
...Wet          2      0     1      2      0       1
...Wet          2      0     1      2      0       1
...Wind         0      1     1      1      1       2
...Storm        0      1     1      1      1       1
...Ldry         0      0     1      1      1       1
...Storm        1      1     1      1      2       1
...Persistent   0      2     1      0      0       0 

Если мы просто сосредоточимся на том, смогли ли студенты правильно определить поездкуметоды, которые в высшей степени применимы (2 с), тогда ряды / учащиеся 1, 2 и 3 получили правильные сценарии погоды, учащиеся / ряды 4 и 5 ошиблись в обоих сценариях погоды, а учащиеся / ряды 6 и 7 ошиблись в первом сценарии, но ихвторой справа.

Как я могу создать дополнительный столбец, который называется что-то вроде «нет правильных применений», который будет отображать 2 баллаs для студентов 1 2 и 3, 0 баллов для студентов 4 & 5 и 1 балл для студентов 6 & 7?

Заранее большое спасибо за вашу помощь

...