Eliminar filas con NA en una columna en R
-
Eliminar filas con
NA
en una columna usando el métodois.na()
en R -
Eliminar filas con
NA
en una columna usando el métodocomplete.cases()
en R -
Eliminar filas con
NA
en una columna usando el métododrop_na()
de la biblioteca Tidyr en R
Las columnas en un marco de datos pueden tener valores vacíos representados por la palabra clave NA
. Este tutorial demuestra cómo eliminar las filas que contienen un valor NA
en una columna en R.
Eliminar filas con NA
en una columna usando el método is.na()
en R
El método is.na()
buscará los valores NA
en un marco de datos y eliminará las filas de valores NA
. El proceso se da a continuación:
- En primer lugar, cree el marco de datos.
- Seleccione la columna basada en los valores
NA
y las filas que desea eliminar. - Cree una negación con el método
is.na()
sin pasar por el parámetrodataframe$columnname
. - El método eliminará las filas al verificar la columna dada si contiene un valor
NA
.
Probemos un ejemplo siguiendo los pasos anteriores.
Ejemplo:
Delftstack = data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
Id=c(101, 102, NA, 104, NA),
Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))
print('The dataframe before removing the rows:-')
print(Delftstack)
print('The dataframe after removing the rows:-')
Delftstack[!is.na(Delftstack$Id),]
El código anterior eliminará las filas en función de los valores NA
en la columna Id
.
Producción :
[1] "The dataframe before removing the rows:-"
Name LastName Id Designation
1 Jack Danials 101 CEO
2 John Cena 102 Project Manager
3 Mike Chandler NA Senior Dev
4 Michelle McCool 104 Junior Dev
5 Jhonny Nitro NA Intern
[1] "The dataframe after removing the rows:-"
Name LastName Id Designation
1 Jack Danials 101 CEO
2 John Cena 102 Project Manager
4 Michelle McCool 104 Junior Dev
Eliminar filas con NA
en una columna usando el método complete.cases()
en R
El método complete.cases()
funciona de manera similar al método is.na()
. El método complete.cases
buscará los valores NA
en un marco de datos y eliminará las filas que contengan este valor.
El proceso es similar a los pasos descritos anteriormente, la única diferencia es que no usamos la negación con complete.cases()
.
Ejemplo:
Delftstack = data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
Id=c(101, 102, NA, 104, NA),
Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))
print('The dataframe before removing the rows:-')
print(Delftstack)
print('The dataframe after removing the rows:-')
Delftstack[complete.cases(Delftstack$Id),]
El código anterior eliminará las filas según los valores NA
en la columna Id
.
Producción :
[1] "The dataframe before removing the rows:-"
Name LastName Id Designation
1 Jack Danials 101 CEO
2 John Cena 102 Project Manager
3 Mike Chandler NA Senior Dev
4 Michelle McCool 104 Junior Dev
5 Jhonny Nitro NA Intern
[1] "The dataframe after removing the rows:-"
Name LastName Id Designation
1 Jack Danials 101 CEO
2 John Cena 102 Project Manager
4 Michelle McCool 104 Junior Dev
Eliminar filas con NA
en una columna usando el método drop_na()
de la biblioteca Tidyr en R
El drop_na()
de la biblioteca tidyr eliminará las filas en función de la columna de valores NA
. Primero, debe instalar la biblioteca tidyr si aún no está instalada.
Ejecute el siguiente código para instalar el paquete:
install.packages('tidyverse')
Aunque la salida del código es similar a los métodos anteriores, el proceso es ligeramente diferente. Usamos la sintaxis dataframe %>% drop_na(column)
para eliminar las filas.
Ejemplo:
library(tidyr)
Delftstack = data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
Id=c(101, 102, NA, 104, NA),
Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))
print('The dataframe before removing the rows:-')
print(Delftstack)
print('The dataframe after removing the rows:-')
Delftstack %>% drop_na(Id)
El código anterior funcionará de manera similar a los métodos anteriores.
Producción :
[1] "The dataframe before removing the rows:-"
Name LastName Id Designation
1 Jack Danials 101 CEO
2 John Cena 102 Project Manager
3 Mike Chandler NA Senior Dev
4 Michelle McCool 104 Junior Dev
5 Jhonny Nitro NA Intern
[1] "The dataframe after removing the rows:-"
Name LastName Id Designation
1 Jack Danials 101 CEO
2 John Cena 102 Project Manager
4 Michelle McCool 104 Junior Dev
También existen métodos como na.omit()
, filter()
, etc., que se utilizan para eliminar filas en función de los valores NA
que se encuentran en cualquier columna. Eliminarán los valores en función de varias columnas, no de una columna.
Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.
LinkedIn Facebook