Filtre les lignes dans le dataframe

Filtre les lignes dans le dataframe
Si nous souhaitons filtrer les lignes à partir du dataframe, nous pouvons utiliser la fonction filtre () et spécifier la condition à l'intérieur. Sur la base de la condition, nous pouvons filtrer les lignes. Pour cela, nous devons utiliser la fonction filtre ().

Dans ce didacticiel R, nous filtrerons les lignes à l'aide de la fonction filtre ().

Créons un dataframe avec quatre lignes et cinq colonnes.

#Create un marché de dataframe qui a 4 lignes et 5 colonnes.
Marché = données.frame (Market_id = C (1,2,3,4), Market_Name = C ('M1', 'M2', 'M3', 'M4'), Market_Place = C ('Inde', 'USA', 'Inde ',' Australie '), Market_Type = C (' Grocery ',' Bar ',' Grocery ',' restaurent '), Market_Squarefeet = C (120 342 220, 1110)))
Marché #display
Impression (marché)

Résultat:

Filtrons les lignes de ce dataframe.

Syntaxe:

filtre (dataframe_object, condition)

Paramètres:
Il faut deux paramètres:

  1. dataframe_object est le dataframe
  2. la condition est utilisée pour filtrer les lignes

Nous pouvons spécifier les conditions à l'aide des opérateurs relationnels et logiques.

Exemple 1:
Dans cet exemple, nous spécifierons la condition sur la colonne Market_ID.

Nous filtrerons les lignes en sélectionnant les valeurs de cette colonne supérieures à 3.

#Create un marché de dataframe qui a 4 lignes et 5 colonnes.
Marché = données.frame (Market_id = C (1,2,3,4), Market_Name = C ('M1', 'M2', 'M3', 'M4'), Market_Place = C ('Inde', 'USA', 'Inde ',' Australie '), Market_Type = C (' Grocery ',' Bar ',' Grocery ',' restaurent '), Market_Squarefeet = C (120 342 220, 1110)))
#return lignes uniquement lorsque les valeurs de la colonne Market_ID sont supérieures à 3
Imprimer (filtre (Market, Market_id> 3))

Résultat:

Nous pouvons voir que les lignes sont filtrées et utilisées l'opérateur (>) plus grand sur la colonne Market_ID.

Exemple 2:
Dans cet exemple, nous spécifierons la condition sur les colonnes Market_ID et Market_Place.

Nous filtrerons les lignes en sélectionnant les valeurs de la colonne Market_ID supérieures à 2 et la valeur Market_Place «Inde».

#Create un marché de dataframe qui a 4 lignes et 5 colonnes.
Marché = données.frame (Market_id = C (1,2,3,4), Market_Name = C ('M1', 'M2', 'M3', 'M4'), Market_Place = C ('Inde', 'USA', 'Inde ',' Australie '), Market_Type = C (' Grocery ',' Bar ',' Grocery ',' restaurent '), Market_Squarefeet = C (120 342 220, 1110)))
#return Rows uniquement lorsque les valeurs de la colonne Market_ID sont supérieures à 3 et que la place est l'Inde
Imprimer (filtre (Market, Market_id> 2 & Market_Place == 'India')))

Résultat:

Nous pouvons voir que les lignes sont filtrées et utilisées l'opérateur supérieur à (>) sur la colonne Market_ID et l'opérateur == sur la colonne Market_Place combinée avec l'opérateur et (&).

Exemple 3:
Dans cet exemple, nous spécifierons la condition sur les colonnes Market_ID et Market_Place.

Nous filtrerons les lignes en sélectionnant les valeurs de la colonne Market_ID supérieures à 2 ou sur le marché_place «Inde».

#Create un marché de dataframe qui a 4 lignes et 5 colonnes.
Marché = données.frame (Market_id = C (1,2,3,4), Market_Name = C ('M1', 'M2', 'M3', 'M4'), Market_Place = C ('Inde', 'USA', 'Inde ',' Australie '), Market_Type = C (' Grocery ',' Bar ',' Grocery ',' restaurent '), Market_Squarefeet = C (120 342 220, 1110)))
#return Rows uniquement lorsque les valeurs de la colonne Market_ID sont supérieures à 3 ou place est l'Inde
Impression (filtre (Market, Market_ID> 2 | Market_Place == 'India')))

Résultat:

Nous pouvons voir que les lignes sont filtrées et utilisées l'opérateur supérieur à (>) sur la colonne Market_ID et l'opérateur == sur la colonne Market_Place combinée avec l'oropérateur ou (|).

Exemple 4:
Dans cet exemple, nous spécifierons la condition sur la colonne Market_Place.

Nous filtrerons les lignes en sélectionnant les valeurs dans la colonne Market_Place de sorte que les valeurs sont en «Inde» ou «USA» en utilisant l'opérateur% en%.

#Create un marché de dataframe qui a 4 lignes et 5 colonnes.
Marché = données.frame (Market_id = C (1,2,3,4), Market_Name = C ('M1', 'M2', 'M3', 'M4'), Market_Place = C ('Inde', 'USA', 'Inde ',' Australie '), Market_Type = C (' Grocery ',' Bar ',' Grocery ',' restaurent '), Market_Squarefeet = C (120 342 220, 1110)))
#return Rows uniquement lorsque les valeurs de Market_Place sont en Inde et aux États-Unis uniquement
Impression (filtre (Market, Market_Place% in% C («Inde», «USA»)))

Résultat:

Nous pouvons voir que les lignes sont filtrées et utilisées l'opérateur% en% pour vérifier les valeurs qui sont «Inde» ou «USA».

Conclusion

Dans cet article, nous avons discuté des quatre exemples différents pour filtrer le DataFrame en spécifiant les différentes conditions à l'aide des opérateurs relationnels, des opérateurs logiques et du% en% opérateur.