L'indice del mio dataframe (TRADEdata) è in formato stringa:KeyError in panda to_datetime utilizzando il formato personalizzato
In [30]: TradeData.index
Out[30]: Index(['09/30/2013 : 04:14 PM', '09/30/2013 : 03:53 PM', ... ], dtype=object)
E vorrei che fosse in Datetime. Ma la conversione non sembra funzionare:
In [31]: TradeDataIdxd = pd.to_datetime(TradeData.index, format="%m/%d/%Y : %I:%M %p")
Traceback (most recent call last):
File "<ipython-input-31-1191c22cd132>", line 1, in <module>
TradeDataIdxd = pd.to_datetime(TradeData.index, format="%m/%d/%Y : %I:%M %p")
File "C:\WinPython-64bit-3.3.2.3\python-3.3.2.amd64\lib\site-packages\pandas\tseries\tools.py", line 128, in to_datetime
return _convert_listlike(arg, box=box)
File "C:\WinPython-64bit-3.3.2.3\python-3.3.2.amd64\lib\site-packages\pandas\tseries\tools.py", line 104, in _convert_listlike
result = tslib.array_strptime(arg, format)
File "tslib.pyx", line 1137, in pandas.tslib.array_strptime (pandas\tslib.c:18543)
KeyError: 'p'
Nessuno degli elementi di TradeData.index sono 'p'. Qualche idea di cosa potrebbe essere il problema? Grazie in anticipo.
sì .... non implementato in C -code .... pls ha sollevato un problema per questo – Jeff
@Jeff done - https://github.com/pydata/pandas/issues/5361. Vedo un po 'di codice per' p ', proverò a controllarlo nei dettagli più tardi. Potrebbe essere questo il mio primo contributo ai panda :) –
grazie ... questo è implementato in tslib.pyx in array_strptime, questo deve solo essere aggiunto (il codice p); con forse un messaggio di errore migliore per i codici non trovati (o passare a datautil) – Jeff