Maison > développement back-end > Tutoriel Python > Comment sélectionner les données d'un DataFrame pandas en fonction de plusieurs critères complexes ?

Comment sélectionner les données d'un DataFrame pandas en fonction de plusieurs critères complexes ?

Barbara Streisand
Libérer: 2024-12-24 00:50:18
original
214 Les gens l'ont consulté

How to Select Data from a pandas DataFrame Based on Multiple Complex Criteria?

Sélection avec des critères complexes à partir de pandas.DataFrame

Considérez le DataFrame suivant :

import pandas as pd
from random import randint

df = pd.DataFrame({'A': [randint(1, 9) for x in range(10)],
                   'B': [randint(1, 9)*10 for x in range(10)],
                   'C': [randint(1, 9)*100 for x in range(10)]})
Copier après la connexion

Pour sélectionner des valeurs dans 'A' pour lequel les valeurs correspondantes pour 'B' sont supérieures à 50 et 'C' n'est pas égal à 900, nous pouvons utiliser les méthodes et les idiomes de Pandas.

Nous commençons par appliquer des opérations sur colonnes pour obtenir des objets de séries booléennes :

df["B"] > 50
(df["B"] > 50) & (df["C"] != 900)
Copier après la connexion

Ces séries représentent les conditions qui nous intéressent. Nous pouvons puis indexez dans le DataFrame en utilisant ces conditions pour filtrer les données :

df["A"][(df["B"] > 50) & (df["C"] != 900)]
Copier après la connexion

Alternativement, nous pouvons utiliser .loc pour obtenir le même résultat :

df.loc[(df["B"] > 50) & (df["C"] != 900), "A"]
Copier après la connexion

Cette méthode offre plus de contrôle et permet une expérience d'indexation plus personnalisable.

Le DataFrame résultant contiendra uniquement les valeurs de « A » qui satisfont aux critères spécifiés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal