Filtre de la série Pandas

Filtre de la série Pandas

Une série Pandas est un tableau unidimensionnel ayant des étiquettes et des valeurs d'index. Nous pouvons filtrer une série Pandas pour des conditions spécifiées en cas de besoin. Pour filtrer la série, nous allons utiliser deux techniques qui sont «Series.Filter () »et« Series.loc [] ".

La syntaxe pour la série.Filter () ”La méthode est:

Pour utiliser la propriété «loc []», la syntaxe fournie ci-dessous doit être suivie:

Exemple n ° 1: Utilisation de la méthode Filter () pour filtrer une série Pandas

Dans cette illustration, nous utiliserons la série Pandas «Series.Filter () ”Méthode pour filtrer une série Pandas.

L'outil Spyder est lancé pour créer des exemples de codes. L'exigence fondamentale pour construire le programme est le chargement des bibliothèques requises. Dans ce cas, nous avons juste besoin d'un seul package qui est appelé «pandas». Pour introduire cette bibliothèque dans notre fichier Python, nous avons utilisé un script unique «Importer des pandas en tant que PD». Ce script a deux parties: le «Importer Pandas» se chargera dans la boîte à outils Pandas dans notre fichier de programme et la partie «As Pd» du script fait «PD» à utiliser comme alias de «Pandas» dans le programme Python.

La ligne suivante a invoqué le «PD.Méthode série () ”. Le «PD» fait référence aux pandas tandis que la «série» fait référence à l'initialisation de la procédure de construction de la série. Nous avons utilisé cette méthode et spécifié certaines valeurs entières pour créer une série avec ces valeurs. Les valeurs que nous avons fournies sont «23», «34», «56», «39», «78», «61», «36», «92», «54» et «11». Nous avons inséré 10 valeurs dans le «PD.Méthode série () ”.

En plus de spécifier le tableau de valeurs, nous avons utilisé le «nom». L'argument «Nom» définit l'étiquette de ce tableau de valeurs. Par conséquent, nous avons spécifié une étiquette pour cela comme des «entiers». Le «PS.Série () ”Fonction construira une série mais elle ne pourra pas conserver cette série. La prochaine fois que nous invoquerons cette méthode dans le programme particulier, il perdra la série précédemment créée. Pour obtenir cette série actuellement générée, un objet de série est créé et nommé «Info» et attribué le résultat généré par l'exercice du «PD.Méthode série () ”. Notre série sera stockée dans l'objet de la série «Info» et sera accessible par la suite en mentionnant ce nom d'objet n'importe où dans le programme.

La série sera générée avec les valeurs spécifiées et la liste d'index par défaut. Mais nous ne voulons pas utiliser la liste séquentielle par défaut. Au lieu de cela, nous devons placer une liste d'index définie par l'utilisateur. Pour cela, nous avons créé une variable «oiseaux» et l'avons initialisée avec ces valeurs «Pigeon», «Parrot», «Sparrow», «Pea_cock», «Crow», «Owl», «King_fisher», «Swan», « Dove "et" Wood_Pecker ". Le nombre de valeurs doit être égal au nombre de valeurs pour la série qui est de 10 car ces valeurs seront définies comme la liste d'index.

Pour convertir cette liste de valeurs en liste d'index, nous avons utilisé la «série.Index »Propriété. Ici, notre nom de série est «Info» mentionné avec le «.Index »Propriété. Puis, attribué à lui les valeurs que la variable «oiseaux» tient. La propriété «Index» prendra les valeurs et les définira comme la liste d'index pour la série à la place d'une liste séquentielle de l'index. Nous avons fait une série, un nom et une liste d'index. Maintenant, nous voulons le voir sur la fenêtre de sortie. Cela peut être fait en utilisant la fonction Python «print ()». Nous avons fourni notre série «Info» comme entrée pour imprimer son contenu.

Appuyez simplement sur les touches «Shift + Enter» pour exécuter le programme. Cela affichera la série de sortie avec les valeurs fournies et la liste d'index spécifiée sur la console Python.

Maintenant, nous filtrons cette série en utilisant la «série.Fonction Filter () ”. Entre les parenthèses de la méthode, nous définirons une liste de valeurs à filtrer de la série.

Les séries.Filter () ”La méthode est invoquée. Nous devons fournir le nom de notre série à la place du mot «série». Nous l'avons écrit comme «Info.filtre()". Nous avons appliqué la méthode à la série. Supposons que nous voulons rechercher une liste des étiquettes d'index afin que nous identifierons ces étiquettes d'index dans cette fonction. Pour identifier les étiquettes d'index, nous avons utilisé l'argument «éléments». Ce paramètre «élément» prendra les valeurs à filtrer à la série. Nous l'avons attribué deux étiquettes d'index «corbeau» et «cygne». À partir de la série «Info», il recherchera ces deux étiquettes d'index et si elle est trouvée, elle les extrait avec leurs valeurs correspondantes. Ensuite, pour stocker la sortie filtrée, nous avons la variable «alpha». La fonction «print ()» affichera le résultat sur le terminal.

Dans l'image attachée ci-dessous, nous pouvons voir que deux enregistrements ont été mis en vue qui possédaient les étiquettes d'index spécifiées.

Maintenant, nous utiliserons la même méthode pour filtrer les étiquettes d'index ayant une expression régulière spécifique.

Pour cela, nous avons invoqué la «série.Filter () ”Méthode. Et dans ses accolades, le paramètre «Regex» est utilisé. Cela prendra une expression pour filtrer les étiquettes d'index contenant. L'expression que nous avons spécifiée pour rechercher est «_» (souligner) pour découvrir les étiquettes d'index qui ont cette expression en eux. Le résultat sera stocké dans la variable «bêta» et présenté avec la méthode «print ()».

La série filtrée affiche trois enregistrements dont les étiquettes d'index avaient l'expression «_» en eux.

Exemple n ° 2: Utilisation de la propriété loc () pour filtrer une série Pandas

Une autre méthode pour filtrer une série Pandas par valeur est la «série.propriété loc [] ”. Nous spécifierons une condition dans la «série.propriété loc [] ”pour extraire l'enregistrement qui spécifie la condition définie.

Nous avons d'abord importé la bibliothèque Pandas, puis avons utilisé le «PD. Série () »Fonction pour générer une série avec ces valeurs« 1 »,« 25 »,« 93 »,« 44 »,« 51 »,« 6 »,« 72 »,« 18 »,« 99 »,« 12 »,« 64 »,« 44 »,« 16 »,« 77 »,« 19 »,« 44 »et« 22 ». La série résultante est stockée dans l'objet de la série «Y». Pour le présenter à l'écran, nous avons transmis cet objet à la méthode «print ()».

Cela nous donne la série suivante comme sortie:

Nous avons invoqué la «série.loc [] ”propriété et spécifié une condition à l'intérieur en utilisant la fonction« lambda ». La condition que nous avons définie est que chaque valeur de la série vérifie si la valeur est égale à «44». Ensuite, stockez le résultat généré dans la variable «cond» et exposez-le à l'aide de la fonction «print ()».

Le résultat montre 3 enregistrements à l'index «3», «11» et «15» qui ont une valeur égale à 44.

Pour la démonstration, nous appliquerons une condition «ou» avec la propriété «loc []».

Entre les parenthèses de la série «Series.loc [] ”, nous avons utilisé la fonction« lambda »pour spécifier la condition qui indique à extraire des valeurs inférieures à 30. Ou les valeurs supérieures à 50, où «x» est toute valeur dans la série «y». La variable «z» gardera la sortie.

Voici la sortie rendue dans l'instantané ci-dessous montrant uniquement les valeurs qui remplissaient la condition définie.

Conclusion

Dans cet article, nous avons développé le concept de filtrage d'une série Pandas avec des conditions particulières. Nous avons expliqué deux méthodes pour ce faire: «Series.filter () "et la" série.propriété loc [] ”. La première illustration a expliqué la «série.Filter () ”Fonction pour filtrer les étiquettes d'index dans une série Pandas en fournissant la liste des étiquettes d'index et également en utilisant l'expression régulière présente dans les étiquettes d'indexes. Les deuxnd Instance a travaillé sur l'utilisation de la «série.loc [] ”propriété pour rechercher des valeurs dans la série qui remplissent la condition particulière.