У меня довольно большой набор данных с именем e
. Один непрерывный ковариат e$rad.dose
должен находиться в диапазоне 0 - 60, однако я заметил, что четыре строки содержат текст, а не числа.
Вопрос: как я могу применить dplyr для удаления этих четырех строк?
Я знаю несколько решений baseR, но я пытаюсь улучшить свой dplyr
.
> table(e$rad.dose)
0 12 12,5 14 15 16 21,6
156 3291 4 1 1 6 2 1
22 24 25 26 27,5 28 33,3 35
1 14 7 1 1 7 1 1
36 45 48 49,4 5,4 50 50,4 52
1 2 1 1 17 12 9 9
52,2 53,2 53,24 54 54,4 54,6 55 55,5
1 1 1 94 1 1 1 1
55,8 56 56,7 57 57,6 58 59,4 60
1 14 1 1 2 3 26 41
60,9 64 68 gammaknife GK
1 1 1 2 2
Я пытался
filter(simpson %in% 1:3, age>=18, rad.dose!= c("gammaknife","GK"))
Но две строки остаются
> table(e$rad.dose)
0 12 12,5 14 15 16 21,6
32 2276 0 0 0 0 0 0
22 24 25 26 27,5 28 33,3 35
0 7 0 0 0 0 0 1
36 45 48 49,4 5,4 50 50,4 52
0 1 0 0 5 3 1 9
52,2 53,2 53,24 54 54,4 54,6 55 55,5
0 0 1 21 0 0 0 0
55,8 56 56,7 57 57,6 58 59,4 60
0 4 0 0 0 1 7 19
60,9 64 68 gammaknife GK
0 1 0 1 1
Я также пытался str_detect
, но это не помогло - или, в по крайней мере, я применил это неправильно:
filter(simpson %in% 1:3, age>=18, str_detect(rad.dose, c("gammaknife","GK")==FALSE))
Спасибо заранее.