Pandas Filtre par valeur de colonne

Pandas Filtre par valeur de colonne
L'une des techniques les plus populaires pour nettoyer les données est le filtrage des données d'un dataframe. Selon l'étiquette et la position des colonnes et des lignes, Pandas propose une variété de techniques ou de méthodes de sélection de données. De plus, Pandas vous permet de filtrer les lignes à l'aide de l'indexation booléenne et d'extraire un sous-ensemble de données en fonction des types de colonnes. Les méthodes les plus populaires pour extraire les sous-ensembles de données d'un Pandas DataFrame sont couvertes dans cet article - sélectionnant une colonne par étiquette, sélectionnant plusieurs colonnes par étiquette, etc.

Comment changer la colonne Pandas en chaîne

Il existe plusieurs méthodes et techniques que nous pouvons utiliser pour filtrer les données du Pandas DataFrame en fonction des valeurs dans les colonnes. Nous allons démontrer quelques méthodes pour filtrer les données à partir d'une dataframe dans les exemples suivants:

Tout d'abord, nous verrons comment filtrer les lignes de données de données Pandas en fonction des valeurs des colonnes en utilisant des opérateurs conditionnels et relationnels spécifiques.

Exemple 1: Filtrez les lignes DataFrame à l'aide de []

Pour démontrer cet exemple, nous avons d'abord besoin d'un dataframe. Le DataFrame est créé à l'aide des pandas.Fonction DataFrame (), nous importons d'abord la bibliothèque Pandas pour créer notre DataFrame.


Nous avons créé notre DataFrame à l'aide d'un dictionnaire Python, puis l'avons passé à l'intérieur du PD.Fonction DataFrame (). Nous avons spécifié les noms de nos colonnes de DataFrame en tant que «étudiant», «âge», «sujet» et «frais». Nous pouvons utiliser la fonction print () pour illustrer notre DataFrame «DF».


Dans le DataFrame précédent, il y a 4 colonnes. «Student» stocke les noms («Anna», «Dany», «John», «Rick», «Jim», «Kenny»). «L'âge» stocke l'âge des individus (25, 23, 22, 18, 19, 20). «Sujet» est composé de noms de matières («comptables», «affaires», «science», «mathématiques», «architecture», «AI»). Et les «frais» sont constitués des frais de chaque sujet (900, 690, 799, 960, 970, 1080). Supposons que nous devions filtrer les lignes où la valeur est supérieure à 900 dans la colonne «frais».


Pour accéder aux valeurs de la colonne «Fee», nous mettons le nom de la colonne, je.e. «Frais», à l'intérieur des parenthèses. Après avoir accédé aux valeurs, nous avons appliqué une condition DF ['Fee']> 900. Pour stocker les valeurs qui remplissent la condition, nous avons créé la variable «sortie».


Nous avons obtenu trois rangées qui satisfont la condition précédente. Nous pouvons utiliser les différentes colonnes à l'intérieur des parenthèses [].

Exemple 2: Filtrez les lignes DataFrame à l'aide de la méthode loc []

Dans cet exemple, la méthode loc [] est utilisée pour accéder aux valeurs à partir des colonnes DataFrame. Ensuite, nous utilisons les opérateurs relationnels ou conditionnels pour filtrer les lignes de DataFrame. La fonction loc () permet d'obtenir rapidement les valeurs à partir d'un dataframe. En passant un nom de colonne, un nom de ligne ou une valeur d'index à la fonction loc (), nous pouvons récupérer les valeurs de données stockées à l'intérieur de la ligne ou de la colonne spécifique.


Pour récupérer les valeurs des colonnes d'âge, nous avons passé le DF [«âge»] à l'intérieur du DF.fonction loc []. Nous avons également utilisé une condition à l'intérieur de la fonction pour récupérer uniquement les lignes où la valeur de l'âge est supérieure à 19. Pour vérifier s'il a récupéré les lignes correctes ou non, illustrons nos données de données à l'aide de la fonction print ().


Dans les exemples précédemment donnés, nous avons vu comment utiliser les opérateurs relationnels ou conditionnels pour filtrer les lignes spécifiques en fonction des valeurs de colonne. Maintenant, nous verrons comment filtrer les données à l'aide de la fonction isin ().

Exemple 3: Filtrez les lignes DataFrame avec des valeurs à l'intérieur de la liste à l'aide de la méthode ISIN ()

Les éléments de DataFrame sont vérifiés pour voir s'ils sont contenus dans des valeurs en utilisant la fonction isin (). Ce n'est que si toutes les étiquettes correspondent à un endroit donné que le résultat sera vrai. Créons notre DataFrame après l'importation du module Pandas. Encore une fois, le PD.DataFrame () est utilisé pour créer notre nouveau DataFrame.


Nous avons créé un dataframe avec trois colonnes - «nom», «désignation» et «salaire» qui stockent les données («Richard», «Will», «Steve», «Larry», «Lana», «Tony»), («Comptable», «comptable», «gestionnaire», «commis», «commis», «gestionnaire») et (1200, 1250, 2100, 1000, 990, 2200). Maintenant, nous créons un objet de liste qui est passé à l'intérieur de la fonction isin () comme une entrée pour correspondre aux valeurs de la liste à partir des valeurs de colonne spécifiées de notre DataFrame.


Nous avons d'abord créé une liste où nous mettons les valeurs «comptable» et «gestionnaire» et attribué cette liste à une variable «Desig». La valeur de la colonne «désignation» est accessible à l'aide du nom de la colonne, i.e. «Désignation», à l'intérieur []. Nous avons utilisé la fonction isin () sur les valeurs évaluées de la colonne pour correspondre aux valeurs de la liste avec les valeurs à l'intérieur de la colonne «Désignation» dans notre dataframe.


Nous avons utilisé les valeurs «comptable» et «gestionnaire» dans la liste. Ainsi, la fonction a renvoyé les lignes où la colonne de désignation a les valeurs du gestionnaire et du comptable.

Exemple 4: Filtrez les données en fonction des valeurs dans les colonnes de données de données à l'aide de la méthode loc [] et isin ()

Maintenant, nous utilisons la méthode loc [] pour récupérer ou accéder aux colonnes spécifiques de notre dataframe. Après avoir accédé aux données, nous utilisons la fonction isin () pour filtrer les données de notre DataFrame.


Dans le script précédent, nous avons une liste «SAL» avec [1200, 2100, 2200]. Ensuite, la liste «SAL» est transmise à l'intérieur de la fonction isin () comme un argument pour correspondre aux valeurs de la liste avec la colonne «Salaire». Après faire correspondre les valeurs, les lignes obtenues à partir de la fonction sont stockées dans une nouvelle variable «df_filter». Maintenant, nous affichons le résultat en utilisant la fonction print ().


On peut voir que les lignes requises avec les valeurs 1200, 2100 et 2200 sont extraites de la dataframe «DF».

Maintenant, dans l'exemple suivant, nous filtrerons les données en utilisant plusieurs conditions.

Exemple 5: Filtrez les lignes de dataframe à l'aide de plusieurs conditions sur les colonnes DataFrame

Créons d'abord un dataframe où nous appliquons les multiples conditions pour filtrer les lignes du dataframe.


Il y a un total de 4 colonnes dans le DataFrame précédent - «étudiant», «âge», «cours» et «frais». La colonne «étudiante» stocke le nom des étudiants («Mike», «Rob», «Arya», «Tom», «Jack», «Luca», «Mark», «Max» et «Alex»). La colonne «Age» contient les âges de chaque élève (21, 21, 23, 22, 19, 20, 25, 23, 22). Alors que les colonnes «cours» et «frais» stockent le nom des cours («comptables», «affaires», «science», «mathématiques», «architecture», «IA», «comptables», «affaires», «AI» ») Et les frais de chaque cours pour un étudiant (1000, 1190, 1250, 1320, 1245, 1580, 1420, 1600, 1600). Appliquons les conditions pour extraire les lignes requises.


Nous avons créé une liste «sub» avec des éléments «comptables» et «IA». La liste est adoptée dans la fonction isin () pour correspondre aux éléments de la liste avec les valeurs de la colonne «Cours». Nous avons utilisé une autre condition que la valeur dans la colonne «Frais» doit être supérieure à 1250. Le script précédent récupère les lignes qui satisfont aux deux conditions.


Ces lignes remplissent les deux conditions.

Conclusion

Dans ce didacticiel, nous avons discuté des multiples méthodes et techniques qui peuvent être utilisées pour filtrer les données de Pandas DataFrame en fonction des valeurs dans les colonnes. Nous avons essayé de vous faire capter les données en fonction des valeurs de colonne par vous-même. Nous avons mis en œuvre les différents exemples de cet article pour vous apprendre à utiliser les fonctions loc [] et isin () ainsi que les opérateurs relationnels ou conditionnels pour extraire les données de la dataframe donnée en fonction des valeurs de colonne.