Comment remplacer zéro par NA dans R (avec exemples)



Vous pouvez utiliser les méthodes suivantes pour remplacer zéro par des valeurs NA dans R :

Méthode 1 : remplacer zéro par NA dans toutes les colonnes

df[df == 0] <- NA

Méthode 2 : Remplacer zéro par NA dans une colonne

df$col1[df$col1 == 0] <- NA

Méthode 3 : Remplacer zéro par NA dans plusieurs colonnes spécifiques

df[, c('col1', 'col2')][df[, c('col1', 'col2')] == 0] <- NA

Les exemples suivants montrent comment utiliser chaque méthode en pratique avec le bloc de données suivant :

#create data frame
df <- data.frame(player=c('A', 'B', 'C', 'D', 'E'),
                 pts=c(17, 12, NA, 9, 25),
                 rebs=c(3, 3, NA, NA, 8),
                 blocks=c(1, 1, 2, 4, NA))

#view data frame
df

  player pts rebs blocks
1      A  17    3      1
2      B  12    3      1
3      C  NA   NA      2
4      D   9   NA      4
5      E  25    8     NA

Exemple 1 : Remplacer zéro par NA dans toutes les colonnes

Le code suivant montre comment remplacer les zéros par des valeurs NA dans toutes les colonnes d’un bloc de données :

#replace zero with NA in all columns
df[df == 0] <- NA

#view updated data frame
df

  player pts rebs blocks
1      A  17    3      1
2      B  12    3      1
3      C  NA   NA      2
4      D   9   NA      4
5      E  25    8     NA

Notez que les zéros ont été remplacés par des valeurs NA dans chaque colonne du bloc de données.

Exemple 2 : Remplacer zéro par NA dans une colonne

Le code suivant montre comment remplacer zéro par des valeurs NA dans une colonne d’un bloc de données :

#replace zero with NA in 'rebs' column only
df$rebs[df$rebs == 0] <- NA

#view data frame
  player pts rebs blocks
1      A  17    3      1
2      B  12    3      1
3      C   0   NA      2
4      D   9   NA      4
5      E  25    8      0

Notez que chaque zéro a été remplacé par NA dans la colonne « rebs » tandis que toutes les autres colonnes sont restées inchangées.

Exemple 3 : Remplacer zéro par NA dans plusieurs colonnes spécifiques

Le code suivant montre comment remplacer zéro par des valeurs NA dans plusieurs colonnes spécifiques d’un bloc de données :

#replace zero with NA values in 'pts' and 'rebs' columns only
df[, c('pts', 'rebs')][df[, c('pts', 'rebs')] == 0] <- NA

#view data frame
df

  player pts rebs blocks
1      A  17    3      1
2      B  12    3      1
3      C  NA   NA      2
4      D   9   NA      4
5      E  25    8      0

Notez que chaque zéro a été remplacé par NA dans les colonnes « pts » et « rebs » tandis que la colonne « blocs » est restée inchangée.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans R :

Comment remplacer les blancs par NA dans R
Comment remplacer les NA par des chaînes dans R
Comment remplacer NA par Mean dans R
Comment remplacer NA par la médiane dans R

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *