ここでは同様の質問がたくさんありますが、実際には同じdatetimeで観測したものは見つかりませんでした。最小非稼働の例では、次のようになります。パンダは重複したデータセットを持つグループ別に再サンプリングする
df = pd.DataFrame(
{"Date": np.tile([pd.Series(["2016-01", "2016-03"])], 2)[0],
"Group": [1,1,2,2],
"Obs":[1,2,5,6]})
要求出力が私の理解では、resample
がすべきことである
Date Group Obs
2016-01 1 1
2016-02 1 1.5
2016-03 1 2
2016-01 2 5
2016-02 2 5.5
2016-03 2 6
あるので、今私は、直線グループによって2016年2月の値を補間したいのですがこれを行うことができます(私の実際のアプリケーションでは、私は四半期から毎月に移動しようとしていますので、1月と4月に観測があります)。しかし、それには何らかの時間インデックスが必要です。 Date
の列。
私はある種のgroupby
の魔法が助けになると思っていますが、それを理解できません!
であれば、実際のアプリケーションで何らかの理由で日付を月末にシフトします。 2016-01には、2016-01-01ではなく2016-01-31のインデックスがあります) - これがどうして起こるのでしょうか? –
私は同じことに気づいた。 Jezraelの回避策を使用することができます: '.dt.to_period' :) – IanS
それはします。一つの最後のこと:これをスピードアップする方法はありますか?私の実際の例は、〜500k行(月に移動すると1.5mに成長する)であり、グループ化するために4列ありますので、これは私のシステムで数分かかります。 –