La opción de Carlos con dplyr también se podría simplificar un poco
haciendo los dos 'summarize' a la vez:
DF %>%
group_by(MES) %>%
summarize(num_mes = n(), hw_na = sum(RESULTADO == " NA ")) %>%
filter(num_mes == hw_na)
Un saludo
Álvaro
El 22/02/18 a las 19:18, Javier Nieto escribió:
Si
La palabra clave para encontrarlos en internet es "scraping r" y
encontraras bastante información.
La libreria rvest es uno de ello.
El 22 de febrero de 2018, 18:17, Miriam Alzate
escribió:
> Buenas tardes,
>
> Me gustaría descargar información sobre productos y
Ya... de esta forma tampoco obtienes el mes que tiene todos sus valores
NA...que es la duda ..
Otra forma más sencilla con data.table que la que envié anteriormente...
>
> Lines <- "MES|VARIABLE|RESULTADO|
+ 1|A|SI|
+ 1|B|SI|
+ 1|C|NO|
+ 2|A|NA|
+ 2|B|SI|
+ 2|C|SI|
+ 3|A|NO|
+ 3|B|NO|
+ 3|C|NO|
Es cierto, una vez más entendí todo mal. Mis disculpas.
La solución con SQL no va nada corta, me parece:
# filtrar el mes en el que todos los campos de la columna RESULTADO son NA
sqldf("
select *
from DF
where mes in
(
select a.mes from
(
select mes, count(*) as total_NA
Nope..,
Sí, puede ser "sqldf" pero de esta forma no te muestra los meses que tienen
todos sus meses con "NA"..
Tienes que hacer primero un conteo de meses y luego un "left join" con el
conteo de "NAs" por mes y quedarte con el mes que tiene los dos valores
iguales (número de meses y número de
Hola,
Aquí tienes un par de formas...
Lines <- "MES | VARIABLE | RESULTADO |
1 | A | SI |
1 | B | SI |
1 | C | NO |
2 | A | NA |
2 | B | SI |
2 | C | SI |
3 | A | NO |
3 | B | NO |
3 | C | NO |
4 | A | NA |
4 | B | NA |
4 | C | NA |"
DF <-