Comment supprimer des lignes avec certains ou tous les NA dans R
Souvent, vous souhaiterez peut-être supprimer les lignes contenant tout ou partie des NA (valeurs manquantes) dans un bloc de données dans R.
Ce tutoriel explique comment supprimer ces lignes à l’aide de base R et du package Tidyr . Nous utiliserons le bloc de données suivant pour chacun des exemples suivants :
#create data frame with some missing values df <- data.frame(points = c(12, NA, 19, 22, 32), assists = c(4, NA, 3, NA, 5), rebounds = c(5, NA, 7, 12, NA)) #view data frame df points assists rebounds 1 12 4 5 2 NA NA NA 3 19 3 7 4 22 NA 12 5 32 5 NA
Supprimer les NA à l’aide de Base R
Le code suivant montre comment utiliser complete.cases() pour supprimer toutes les lignes d’un bloc de données qui ont une valeur manquante dans une colonne :
#remove all rows with a missing value in any column df[complete.cases(df), ] points assists rebounds 1 12 4 5 3 19 3 7
Le code suivant montre comment utiliser complete.cases() pour supprimer toutes les lignes d’un bloc de données qui ont une valeur manquante dans des colonnes spécifiques :
#remove all rows with a missing value in the third column df[complete.cases(df[ , 3]),] points assists rebounds 1 12 4 5 3 19 3 7 4 22 NA 12 #remove all rows with a missing value in either the first or third column df[complete.cases(df[ , c(1,3)]),] points assists rebounds 1 12 4 5 3 19 3 7 4 22 NA 12
Supprimer les NA à l’aide de Tidyr
Le code suivant montre comment utiliser drop_na() du package Tidyr pour supprimer toutes les lignes d’un bloc de données qui ont une valeur manquante dans une colonne :
#load tidyr package
library(tidyr)
#remove all rows with a missing value in any column
df %>% drop_na()
points assists rebounds
1 12 4 5
3 19 3 7
Le code suivant montre comment utiliser drop_na() du package Tidyr pour supprimer toutes les lignes d’un bloc de données qui ont une valeur manquante dans des colonnes spécifiques :
#load tidyr package
library(tidyr)
#remove all rows with a missing value in the third column
df %>% drop_na(rebounds)
points assists rebounds
1 12 4 5
3 19 3 7
4 22 NA 12
Vous pouvez trouver plus de didacticiels R ici .