次の例では:
import datetime
import pandas
base = datetime.datenow()
rr = [base - datetime.timedelta(days=x) for x in range(23)]
ee = [base - datetime.timedelta(days=x+3) for x in range(23)]
qq = pandas.DataFrame(data=rr, index=ee, columns=['datacol'])
qq.index - qq.datacol.values
最後の行で TypeError が発生します。
In [11]: qq.index-qq.datacol.values
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-11-e850e726adac> in <module>()
----> 1 qq.index-qq.datacol.values
/usr/local/lib/python2.7/dist-packages/pandas/tseries/index.pyc in __sub__(self, other)
556 return self.shift(-other)
557 else: # pragma: no cover
--> 558 raise TypeError(other)
559
560 def _add_delta(self, delta):
TypeError: ['2013-11-08T21:18:50.478689000-0800' '2013-11-07T21:18:50.478689000-0800'
インデックスと列の違いを取得するにはどうすればよいですか?
注: datetime オブジェクトから取得されましたが、 index は自動的に Timestamp になりました。