Позвольте мне начать с некоторых примеров данных:
> 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
Есть ли более эффективный способ?