Maison  >  Article  >  développement back-end  >  Comment diviser un DataFrame Pandas en fonction d'un seuil de valeur de colonne ?

Comment diviser un DataFrame Pandas en fonction d'un seuil de valeur de colonne ?

DDD
DDDoriginal
2024-10-19 22:30:29763parcourir

How to Split a Pandas DataFrame Based on a Column Value Threshold?

Diviser un DataFrame Pandas par une valeur de colonne

Considérez un scénario dans lequel vous avez un DataFrame avec une colonne nommée « Ventes ». Vous souhaitez séparer ce DataFrame en deux en fonction des valeurs de la colonne « Ventes », de sorte que le premier DataFrame contienne des données où « Ventes » est inférieure à un seuil spécifié, tandis que le second DataFrame inclut des données où « Ventes » est supérieure à ou égal au seuil.

Pour y parvenir, vous pouvez tirer parti de l'indexation booléenne dans Pandas. Voici un exemple :

<code class="python">import pandas as pd

# Create a sample DataFrame
df = pd.DataFrame({'Sales': [10, 20, 30, 40, 50], 'A': [3, 4, 7, 6, 1]})
print(df)

# Set the threshold (s)
s = 30

# Split the DataFrame based on the 'Sales' column
df1 = df[df['Sales'] >= s]
print(df1)

df2 = df[df['Sales'] < s]
print(df2)

Sortie :

   A  Sales
0  3     10
1  4     20
2  7     30
3  6     40
4  1     50

   A  Sales
2  7     30
3  6     40
4  1     50

   A  Sales
0  3     10
1  4     20

Vous pouvez également utiliser l'opérateur de masque inverse (~) pour obtenir le même résultat :

<code class="python">mask = df['Sales'] >= s
df1 = df[mask]
df2 = df[~mask]
print(df1)
print(df2)</code>

Cela aura le même effet que l'exemple précédent.

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