我讀入一個文件並用熊貓DataFrame
繪製它。索引是DatetimeIndex,然後我使用ginput(1)
方法得到一個點,但是我得到的座標是錯誤的。Ginput給datetimeindex輸入錯誤的日期
的代碼如下:
import pandas as pd
from matplotlib.dates import num2date, date2num
ts = pd.date_range('2012-04-12,16:13:09', '2012-04-14,00:13:09', freq='H')
df = pd.DataFrame(index=ts)
df[0] = 20.6
我然後情節和使用ginput在圖表上點擊:
df.plot()
t = pylab.ginput(n=1) #click somewhere near 13-APR-2012
然而,第一項似乎是一個浮子
In [8]: x = t[0][0] # ~ 370631.67741935479
In [9]: num2date(x)
Out[9]: datetime.datetime(1015, 10, 3, 16, 15, 29, 32253, tzinfo=<matplotlib.dates._UTC object at 0x104196550>)
# this is way out!
該文件表明它應該使用這些浮標(來自datetonum
):
In [10]: dt = pd.to_datetime('13-4-2012', dayfirst=True)
In [11]: date2num(dt)
Out[11]: 734606.0
這是什麼浮點數,以及如何將它轉換爲日期時間?
注:如果我從數據框中刪除行的一個這種正常工作:
df1 = df.drop(ts[1], axis=0)
...
我在[github](https: //github.com/pydata/pandas/issues/2503)。 –
非常感謝你的幫助。你的編輯是完美的:) – wuwucat