私はPandas Dataframeを2日間のバケットにグループ化しようとしています。例えば、場合、私は、以下の操作を行います。Pandas GroupBy日付チャンク
df = pd.DataFrame()
df['action_date'] = ['2017-01-01', '2017-01-01', '2017-01-03', '2017-01-04', '2017-01-04', '2017-01-05', '2017-01-06']
df['action_date'] = pd.to_datetime(df['action_date'], format="%Y-%m-%d")
df['user_name'] = ['abc', 'wdt', 'sdf', 'dfe', 'dsd', 'erw', 'fds']
df['number_of_apples'] = [1,2,3,4,5,6,2]
df = df.groupby(['action_date', 'number_of_apples']).sum()
が、私は一日あたりnumber_of_applesでACTION_DATEによってグループ化されたデータフレームを取得します。
しかし、データフレームを2日間のチャンクで見る場合、どうすればいいですか?私はdate_chunkごとのnumber_of_applesを分析したいのですが、日付2017-01-01 & 2017-01-03の新しいデータフレームを作成するか、2017-01-04 & 2017-01-05の別のデータフレームを作成し、最後に1つを作成するか2017-01-06のために、またはただ再グループ化し、内部で働くことによって。
EDIT:最終的には、各チャンクのリンゴの数に基づいてユーザーのリストを作成したいので、各チャンクのリンゴの合計や平均を求めたくありません。混乱させて申し訳ありません!
ありがとうございます!
ありがとうございます!これも機能しますが、私が探しているものではありません - 申し訳ありませんが、私は不明でした!私の編集内容を見てください。 – cgp25
編集された回答を参照してください。 – jezrael
うれしいことに、うれしい1日! – jezrael