5

日時インデックスを持つシリーズがあり、他の任意の日時インデックスを使用してこのデータを補間したいと考えています。基本的に私が欲しいのは、次のコード スニペットを多かれ少なかれ機能させる方法です。

from pandas import Series
import datetime

datetime_index = [datetime.datetime(2010, 1, 5), datetime.datetime(2010, 1, 10)]
data_series = Series([5, 15], [datetime.datetime(2010, 1, 5), datetime.datetime(2010, 1, 15)])

def interpolating_reindex(data_series, datetime_index):
    """?????"""

goal_series = interpolating_reindex(data_series, datetime_index) 

assert(goal_series == Series([5, 10], datetime_index))

reindex補間できないため、私が望むことをしません。また、シリーズのインデックスが同じではない可能性があります。 resample必ずしも定期的ではない任意の既に定義されたインデックスを使用したいので、私が望むものではありません。また、とIndex.joinを実行できることを期待して、 を使用してインデックスを組み合わせてみましたが、期待どおりに機能しませんでした。ポインタはありますか?reindexinterpolate

4

1 に答える 1

6

これを試して:

from pandas import Series
import datetime

datetime_index = [datetime.datetime(2010, 1, 5), datetime.datetime(2010, 1, 10)]
s1 = Series([5, 15], [datetime.datetime(2010, 1, 5), datetime.datetime(2010, 1, 15)])
s2 = Series(None, datetime_index)
s3 = s1.combine_first(s2)
s3.interpolate()

コメントに基づいて、ターゲット インデックスに補間された結果は次のようになります。

goal_series  = s3.interpolate().reindex(datetime_index)

assert((goal_series == Series([5, 10], datetime_index)).all())
于 2014-05-21T01:27:36.327 に答える