1

pandas Series オブジェクトとして時系列があります。過去 60 日間の値を見て、1 日の値を予測できるかどうかを調べたいと考えています。そのため、時系列を次のようなデータ フレームに変換したいと考えています (これを学習アルゴリズムにフィードできるようにするため)。

Day 1    Day2     ... Day 60   value
986.55   990.95   ... 1618.86  1655.5
990.95   1017.85  ... 1655.5   1669.8
1017.85  1053.68  ... 1669.8   1707.2

どうすればそのような変換を行うことができますか?

私の時系列は次のようになります (インデックスは pandas.tseries.index.DatetimeIndex です)。

DATE
1991-01-02 986.55
1991-01-03 990.95
1991-01-04 1017.85
1991-01-05 1053.68
4

2 に答える 2

1

と言うsシリーズです。シリーズを毎日スライスすることで、そこから DataFrame を作成できます。

df = pd.DataFrame([s[i:i+60].values for i in range(len(s)-60)])

次に、列の名前を変更します。

df.columns=['Day '+str(i) for i in range(1,61)]
于 2013-02-22T21:02:56.363 に答える
0
doffset = pd.tseries.offsets.Day(60)

f = lambda x: pd.DataFrame(x.tolist()).T

pd.concat([f(df['value'].ix[i:i+doffset]) for i in df.index])
于 2013-02-22T21:14:00.857 に答える