Comment supprimer des lignes avec des zéros dans R (avec exemple)
Vous pouvez utiliser l’une des méthodes suivantes pour supprimer les lignes contenant des zéros dans un bloc de données dans R :
Méthode 1 : supprimer les lignes contenant des zéros à l’aide de Base R
df_new <- df[apply(df!=0, 1, all),]
Méthode 2 : supprimer les lignes contenant des zéros à l’aide de dplyr
library(dplyr) df_new <- filter_if(df, is.numeric, all_vars((.) != 0))
Les exemples suivants montrent comment utiliser chaque méthode en pratique avec le bloc de données suivant :
#create data frame df <- data.frame(points=c(5, 7, 8, 0, 12, 14, 0, 10, 8), assists=c(0, 2, 2, 4, 4, 3, 7, 6, 10), rebounds=c(8, 8, 7, 3, 6, 5, 0, 12, 11)) #view data frame df points assists rebounds 1 5 0 8 2 7 2 8 3 8 2 7 4 0 4 3 5 12 4 6 6 14 3 5 7 0 7 0 8 10 6 12 9 8 10 11
Exemple 1 : Supprimer les lignes contenant des zéros à l’aide de Base R
Le code suivant montre comment supprimer les lignes contenant des zéros à l’aide de la fonction apply() de la base R :
#create new data frame that removes rows with any zeros from original data frame df_new <- df[apply(df!=0, 1, all),] #view new data frame df_new points assists rebounds 2 7 2 8 3 8 2 7 5 12 4 6 6 14 3 5 8 10 6 12 9 8 10 11
Notez que les trois lignes contenant des valeurs nulles ont été supprimées.
Exemple 2 : Supprimer les lignes contenant des zéros à l’aide de dplyr
Le code suivant montre comment supprimer les lignes contenant des zéros à l’aide de la fonction filter_if() du package dplyr dans R :
#create new data frame that removes rows with any zeros from original data frame df_new <- filter_if(df, is.numeric, all_vars((.) != 0)) #view new data frame df_new points assists rebounds 1 7 2 8 2 8 2 7 3 12 4 6 4 14 3 5 5 10 6 12 6 8 10 11
Notez que les trois lignes contenant des valeurs nulles ont été supprimées.
Cela correspond au résultat que nous avons obtenu en utilisant la base R.
Remarque : Nous avons utilisé la fonction is.numeric pour spécifier que toutes les variables numériques du bloc de données doivent être différentes de zéro.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans R :
Comment supprimer les lignes vides du bloc de données dans R
Comment supprimer des colonnes avec des valeurs NA dans R
Comment supprimer les lignes en double dans R