Pandas DataFrame での連続する値のグループ化
データ分析では、データが順序付けされており、連続する値をグループ化する必要がある状況によく遭遇します。価値観を一緒に。このタスクは、カスタマイズされたグループ化手法を使用してパンダで実現できます。
次の値を含む「a」という名前の列を持つ DataFrame があるとします。
[1, 1, -1, 1, -1, -1]
私たちの目標は、これらをグループ化することです。
[1,1] [-1] [1] [-1, -1]
のように、値を連続したブロックに分割します。これを実現するには、以下を使用できます。手順:
これらを実装するコードは次のとおりです。ステップ:
import pandas as pd df = pd.DataFrame({'a': [1, 1, -1, 1, -1, -1]}) print(df) custom_series = df['a'].ne(df['a'].shift()).cumsum() print(custom_series) for i, g in df.groupby(custom_series): print(i) print(g) print(g.a.tolist())
これにより、目的のグループ化が出力されます:
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]
以上がPandas DataFrame で連続する値をグループ化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。