は、私はいくつかの基本的なBI指標を計算します。私は日付のデータフレームをグループ化することにより、売上高を達成しましたし、価格を合計:計算MRRデータフレーム
df = df[["Date", "Price"]].groupby(df['Date'])["Price"].sum().reset_index()
は今、私は純収益に似ている、MRRを見つけたいが、場合には、列の数ヶ月は、より多くを持っています1カ月以上であれば、価格は次の月に均等に "移動"する必要があります。また、それは月単位でグループ分けされており、日単位ではありません。
たとえば、私が2016年1月に3ヶ月間に30ドルの行を持っている場合、1月に10ドル、2月に10ドル、3月に10ドルを追加する必要があります。
私の最初のアイデアは、データフレームを繰り返し、次の月に "移動"して新しいデータフレームを手動で作成する必要がある月数と金額を把握することでした。
しかし、最初に、パンダにそれを行うためのPythonicの方法はありますか?
データのデータフレームを再現する:
import pandas as pd
df = pd.DataFrame({'date': ['01-01-2016', '05-01-2016', '10-01-2016','04-02-2016'],
'months': [1, 3, 1, 6],
'price': [40, 60, 20, 60]})
望ましい結果:
Date | MRR
January 2016 | 80
February 2016| 30
March 2016 | 10
April 2016 | 10
May 2016 | 10
June 2016 | 10
July 2016 | 10
そして
January 2016 = 40 + 20 + 20 + 0
February 2016 = 0 + 20 + 0 + 10
March 2016 = 0 + 0 + 0 + 10
April 2016 = 0 + 0 + 0 + 10
May 2016 = 0 + 0 + 0 + 10
June 2016 = 0 + 0 + 0 + 10
July 2016 = 0 + 0 + 0 + 10
たとえば、まさにあなたがこれを行うことができますあなたの所望の出力を生成します。これは人々が投稿する前に迅速に回答を試すのに役立ちます。 –
[良い再現可能なパンダの例を作る方法](http://stackoverflow.com/questions/20109391/how-to-make-good-reproducible-pandas-examples)をチェックしてください。 – jezrael
両方のおかげで、私はいくつかのデータを追加しました。もう一度働かないで、私はもっと追加します。 – Tasos