1
私は次のデータフレームを持っており、この例では2つのピリオドを識別子でグループ化して、最後のロールオーバー累積リターンを取得したいと考えています。私の実際のケースでは、私は長い期間が必要ですが、私の問題は、GROUPBYともっとです:groupbyでのPythonローリング累積リターン
id return
2012 1 0.5
2012 2 0.2
2013 1 0.1
2013 2 0.3
結果は次のようになります。これは、期間がローリングされていることをインポートは
id return cumreturn
2012 1 0.5 0.5
2012 2 0.2 0.2
2013 1 0.1 0.65
2013 2 0.3 0.56
です。私はこれまで、以下の式を有する:はAttributeError:
df["cumreturn"] = df.groupby("id")["return"].fillna(0).pd.rolling_apply(df,5,lambda x: np.prod(1+x)-1)
はしかし、私は次のエラーを取得する "シリーズのオブジェクトが属性「PD」を持っていません。私はローリング累積リターンを得る方法を知っています。しかし、私はそれをgroupbyとどのように組み合わせるかを理解できません。
申し訳ありませんが、ミーティング、( - : – piRSquared
@piRSquared ....私はあなたの投稿から学ぶ、私が求めています理由です。ハッピーミーティング! –