を違いを追加します - ES_Inverse_price
差列を取り、からそれを減算し、私は新しい列を作成しようとしているパンダ時系列 - 私はデータフレーム、DF持って前の列から新しい行に
Ticker_x Date Close_x ES_difference
0 ES H7 10/18/2016 13:44 2128
1 ES H7 10/18/2016 13:59 2128.75 0.75
2 ES H7 10/18/2016 14:14 2125.75 -3
3 ES H7 10/18/2016 14:29 2126.5 0.75
4 ES H7 10/18/2016 14:44 2126.5 0
5 ES H7 10/18/2016 16:14 2126 -0.5
6 ES H7 10/18/2016 16:44 2126.25 0.25
7 ES H7 10/18/2016 17:59 2126.5 0.25
8 ES H7 10/18/2016 18:14 2127 0.5
9 ES H7 10/18/2016 19:14 2127.75 0.75
10 ES H7 10/18/2016 19:44 2127.75 0
11 ES H7 10/18/2016 19:59 2127.75 0
12 ES H7 10/18/2016 20:44 2129 1.25
13 ES H7 10/18/2016 21:29 2128.75 -0.25
14 ES H7 10/18/2016 21:44 2129 0.25
15 ES H7 10/18/2016 22:14 2129.5 0.5
16 ES H7 10/18/2016 22:44 2129.5 0
をClose_x
コラム:
Df['ES_difference'] = Df['Close_x'].diff()
だから、私はES_difference
列を作った方法です。今、私は新しい列ES_Inverse_price
がClose_x
から前の値を取り、同じ行の差異列の値を減算します:
Df['ES_Inverse_price'] = ''
Df['ES_Inverse_price'][0] = Df['Close_x'][0]
Df['ES_Inverse_price'][1:] = Df['ES_Inverse_price'].shift(1)-Df['ES_difference']
...そうES_Inverse_price
の最初の行はClose_x
内の最初の行に等しくなるように起こっています。それは問題ありませんが、今私は差の列を減算して、私が作成しようとしているES_Inverse_price
列の新しい値を取得したいと考えています。
は残念ながら、私はそれででコードを参照する次のエラーを取得する:
TypeError: ufunc 'subtract' did not contain a loop with signature matching types dtype('S32') dtype('S32') dtype('S32')
は、編集:代わり2128.75であることの行1を取るたとえば、それは2127.25でしょう。私は 'Close_x'(既に確立された値)から前の行の値を差し引いて差し引いて(2128.75を与える)差を差し引いています。
編集:私は完全には理解していないと確信している
\t close_p \t ticker \t difference \t ES_Inverse Price
0 \t 100 \t aapl \t NaN \t NaN
1 \t 102 \t aapl \t 2.0 \t 98.0
2 \t 103.4 \t aapl \t 1.4 \t 96.6
3 \t 101.2 \t aapl \t -2.2 \t 98.8
4 \t 106.2 \t aapl \t 5.0 \t 93.8
私はあなたのケースで 'Close_p'の違いを差し引いていません。むしろ、私は差分を "ES_Inverse_price"カラムに貼り付けようとしています。差分カラムが減算されているので、 "ES_Inverse_price"カラムは着実に "Close_p"(または "Close_x")カラム。だから私はあなたがシフト(1)コードで "Close_p"を取っているときに、私が探しているものとは違う結果を得ようとしていると思います。私はそこに差の列を持って、私はちょうど新しい 'ES_Inverse_price'列の前の値から差し引いて新しい行の値に到達させたい。 –
編集:コメントありがとう、私は元の投稿の下部に私が探しているものの例を追加しました。 –
これで、close_xからes_difference(シフトダウン)を差し引いていますか?編集 –