下のパンダのDataFrameが既に列A
にソートされているとします。ソートされたDataFrameを停止基準にグループ化するにはどうすればよいですか?
A | B
-----
0 | 0
1 | 1
2 | 2
3 | 3
4 | 4
5 | 0
6 | 1
7 | 2
8 | 3
9 | 4
10 | 0
11 | 1
12 | 2
13 | 3
14 | 4
その列の値がダウンからどこに行くか、私は列B
に「停止ポイント」に基づいて3つのグループにグループにこのことを伝えたい:
import pandas as pd
data = {'A': range(15),
'B': range(5)*3}
df = pd.DataFrame(data)
# just in case:
df.sort('A', inplace=True)
結果のデータフレームは、次のようになりますグループを区別する鍵がないため、groupbyを素朴に使用することはできません。
個々の行をソート順に反復することでこれを行うのは簡単ですが、パンダ固有のソリューションがあるかどうかは疑問でした。
これは助けることができます:http://pandas.pydata.org/pandas-docs/stable/groupby.html –