Dans un DataFrame, vous pouvez rencontrer une colonne contenant des valeurs consécutives que vous devez regrouper. Par exemple, considérons la colonne suivante avec des valeurs :
[1, 1, -1, 1, -1, -1]
Pour regrouper efficacement ces valeurs dans les groupes souhaités comme :
[1,1] [-1] [1] [-1, -1]
suivez ces étapes à l'aide de la bibliothèque Pandas :
Vous pouvez tirer parti d'une série personnalisée pour réaliser ce regroupement. Voici l'approche :
import pandas as pd # Create sample DataFrame df = pd.DataFrame({'a': [1, 1, -1, 1, -1, -1]}) # Use ne() and cumsum() to create grouping indicator ind = df['a'].ne(df['a'].shift()).cumsum() # Group by this indicator for i, g in df.groupby(ind): # Print grouping key print(i) # Print rows in group print(g) # Convert values to list for display print(g.a.tolist())
Ce code affichera les regroupements et les valeurs souhaités :
1 a 0 1 1 1 [1, 1] 2 a 2 -1 [-1] 3 a 3 1 [1] 4 a 4 -1 5 -1 [-1, -1]
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!