私はPandas DataFrameの変数の対数リターンに関するデータを持っています。これらのリターンを100(または任意の数値)から始まるインデックス付き時系列に変換したいと思います。だから、最初の値たとえば、中、月の第1回2000は100に等しくなるように設定されているパンダ:返されたデータからインデックス付き時系列を作成する
と:インフレ指数を作成するときに、異なる大きさの2つのシリーズを比較するとき、このような操作は、例えば、非常に一般的です2000年1月2日の次の値は100 * exp(return_2000_01_02)のようになります。以下の例: iterating row by row through a pandas dataframe
Iはまた、私ができることを知っている:
このSO質問に提示されるよう私がパンダデータフレームの行をループ.iteritems()を使用できることを知っていますDataFrameをnumpy配列にし、その配列の値をループし、numpy配列をPandas DataFrameに戻します。 .as_matrix()方法がここで説明されています http://pandas.pydata.org/pandas-docs/version/0.13.1/generated/pandas.Series.html
アンパンダインデックスに記載されているようにそれを行うにしても簡単な方法は、Pythonとnumpyのインデックス演算子[]を使用して行を反復することです。 http://pandas.pydata.org/pandas-docs/stable/indexing.html
問題は、これらのすべてのソリューション(iteritemsを除く)がPandasの「外部」で動作し、私が読んだことでは非効率的だということです。
純粋にPandasを使用してインデックス付き時系列を作成する方法はありますか?そうでない場合は、これを行う最も効率的な方法を提案してください。解決策を見つけることは驚くほど困難です。なぜなら、インデックスと索引付けは私が今回の後ではないパンダで特定の意味を持っているからです。
ベース1とあなたの問題を解決するには、 '(1 + df.return).cumprod()'で、 'df'あなたのデータフレームは –