Comment supprimer des lignes dans R (avec exemples)



Vous pouvez utiliser la syntaxe suivante pour supprimer des numéros de ligne spécifiques dans R :

#remove 4th row
new_df <- df[-c(4), ]

#remove 2nd through 4th row
new_df <- df[-c(2:4), ]

#remove 1st, 2nd, and 4th row
new_df <- df[-c(1, 2, 4), ]

Vous pouvez utiliser la syntaxe suivante pour supprimer les lignes qui ne répondent pas à des conditions spécifiques :

#only keep rows where col1 value is less than 10 and col2 value is less than 6
new_df <- subset(df, col1<10 & col2<6)

Et vous pouvez utiliser la syntaxe suivante pour supprimer les lignes avec une valeur NA dans n’importe quelle colonne :

#remove rows with NA value in any column
new_df <- na.omit(df)

Les exemples suivants montrent comment utiliser chacune de ces fonctions dans la pratique.

Exemple 1 : Supprimer des lignes par numéro

Le code suivant montre comment supprimer des lignes par numéro de ligne spécifique dans R :

#create data frame
df <- data.frame(player=c('A', 'B', 'C', 'D', 'E'),
                 pts=c(17, 12, 8, 9, 25),
                 rebs=c(3, 3, 6, 5, 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   8    6      2
4      D   9    5      4
5      E  25    8     NA

#remove 4th row
df[-c(4), ]

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

#remove 2nd through 4th row
df[-c(2:4), ]

  player pts rebs blocks
1      A  17    3      1
5      E  25    8     NA

#remove 1st, 2nd, and 4th row
df[-c(1, 2, 4), ]

  player pts rebs blocks
3      C   8    6      2
5      E  25    8     NA

Exemple 2 : Supprimer des lignes par condition

Le code suivant montre comment supprimer les lignes qui ne remplissent pas une condition spécifique :

#create data frame
df <- data.frame(player=c('A', 'B', 'C', 'D', 'E'),
                 pts=c(17, 12, 8, 9, 25),
                 rebs=c(3, 3, 6, 5, 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   8    6      2
4      D   9    5      4
5      E  25    8     NA

#only keep rows where pts is less than 10 and rebs is less than 6
subset(df, pts<10 & rebs<6)

  player pts rebs blocks
4      D   9    5      4

Exemple 3 : Supprimer les lignes avec des valeurs NA

Le code suivant montre comment supprimer les lignes avec une valeur NA dans n’importe quelle ligne :

#create data frame
df <- data.frame(player=c('A', 'B', 'C', 'D', 'E'),
                 pts=c(17, 12, 8, 9, 25),
                 rebs=c(3, 3, 6, 5, 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   8    6      2
4      D   9    5      4
5      E  25    8     NA

#remove rows with NA value in any row:
na.omit(df)

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

Ressources additionnelles

Comment ajouter des lignes à un bloc de données dans R
Comment supprimer les lignes en double dans R
Comment additionner des lignes spécifiques dans R

Ajouter un commentaire

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