Установите значение для нескольких переменных как NA, когда критерии выполнены (данные панели) - PullRequest
0 голосов
/ 18 октября 2018

Позвольте мне начать с некоторых примеров данных:

> game_data <- data.frame(player = c(1,1,1,2,2,2,3,3,3), level = c(1,2,3,1,2,3,1,2,3), score=c(120,150,0,80,0,0,75,100,130), interactions=c(10,7,0,18,0,0,4,5,16))
> game_data
  player level score interactions
1      1     1   120           10
2      1     2   150            7
3      1     3     0            0
4      2     1    80           18
5      2     2     0            0
6      2     3     0            0
7      3     1    75            4
8      3     2   100            5
9      3     3   130           16

Теперь я хочу установить значения для оценки и для взаимодействий как NA, когда оценка == 0.

I 'Я попробовал следующий код, но в этом случае мне нужно повторить код для каждой переменной (... и у меня много в моем наборе данных)

> game_data$score <- ifelse(game_data$score == 0, NA, game_data$score)
> game_data
  player level score interactions
1      1     1   120           10
2      1     2   150            7
3      1     3    NA            0
4      2     1    80           18
5      2     2    NA            0
6      2     3    NA            0
7      3     1    75            4
8      3     2   100            5
9      3     3   130           16

Есть ли более эффективный способ?

...