2017-10-16 15 views
0

私は、そのような[0,5)、[5、10)など、さまざまな範囲でグループ年齢をしたい...と、それらのための関連合計になるだろうなパンダと同時にグループ化して合計するには?

Year Age  Count 
1999 0  80 
     1  80 
     2  80 
     3  80 
     4  90 
     5  100 
     ... 
2000 0  60 
     .... 

としてデータフレームを持っています範囲。したがって、上記の

Year Age  Count 
1999 0-4  410 
     5-9  ... 
     ... 
2000 0-4  ... 
     ... 

なるgroupbysumでこれを行う簡単な方法はありますか?単位で、0とあなたの最大値、プラス5の間、range()機能がpd.cut()用カットポイントを作成します

cut_points = range(0, df.Age.max() + 5, 5) 
df['Age_Range'] = pd.cut(df.Age, cut_points) 
df.groupby(['Year', 'Age_Range'])['Count'].sum() 

:(@MaxUが示唆するように)

+0

多分...このデータセットを再現するためのコードをいくつか追加できますか? –

+0

[pd.cut()](https://pandas.pydata.org/pandas-docs/stable/generated/pandas.cut.html)メソッドを使用してください... – MaxU

答えて

0

あなたは中間Age_Range列を作るためにpd.cut()を使用することができます5つの

関連する問題