Maison >développement back-end >Tutoriel Python >Comment sélectionner des lignes DataFrame entre deux valeurs en Python avec des pandas ?

Comment sélectionner des lignes DataFrame entre deux valeurs en Python avec des pandas ?

DDD
DDDoriginal
2024-12-02 18:20:12179parcourir

How to Select DataFrame Rows Between Two Values in Python with pandas?

Sélection de lignes dans un DataFrame entre deux valeurs avec les pandas de Python

Lorsque vous travaillez avec des frameworks d'analyse de données comme les pandas, il est souvent nécessaire de filtrer les lignes en fonction de critères précis. Une tâche courante consiste à sélectionner les lignes dans lesquelles une colonne particulière se situe dans une plage de valeurs spécifiée.

Dans votre cas, vous essayez de filtrer un DataFrame (df) pour inclure des lignes avec des valeurs de clôture_prix comprises entre 99 et 101. . Cependant, vous rencontrez l'erreur :

ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all()

Cette erreur provient de l'expression que vous utilisez pour la ligne. sélection :

df[99 <= df['closing_price'] <= 101]

Pour corriger cette erreur, vous pouvez profiter de la méthode between fournie par pandas. Cette méthode vous permet de filtrer un DataFrame selon qu'une colonne spécifiée satisfait ou non une plage particulière.

Voici comment vous pouvez réviser votre code en utilisant entre :

df = df[df['closing_price'].between(99, 101)]

Dans ce code modifié :

  • df['closing_price'].between(99, 101) crée une série booléenne qui identifie lignes où les valeurs de clôture_prix sont comprises entre 99 et 101 (inclus).
  • df[ filtre le DataFrame d'origine (df) en fonction de la série booléenne générée par between. Seules les lignes avec des valeurs vraies dans la série booléenne sont incluses dans le DataFrame filtré.

Cette approche résout le problème d'ambiguïté et sélectionne efficacement les lignes dans la plage spécifiée.

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:
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