Извиняюсь заранее за это, но после двух часов поиска и попыток я не могу получить правильный ответ здесь. У меня есть кадр данных, заполненный с помощью pandas io sql.read_frame().
Столбец, который для меня слишком много, равен dtype
int64
. Целые числа имеют формат YYYYMMDD
. например, 20070530
- 30 мая 2007 года. Я пробовал целый ряд подходов, наиболее очевидное существо;
pd.to_datetime(dt['Date'])
и pd.to_datetime(str(dt['Date']))
с несколькими вариациями функций разных параметров.
В лучшем случае результатом была дата, интерпретируемая как время. Дата установлена на 1970-01-01
- результат в соответствии с приведенным выше примером 1970-01-01 00:00:00.020070530
Я также пробовал различные функции .map()
, найденные в симулятивных сообщениях.
Я заметил, что в соответствии с np.date_range()
можно интерпретировать строковые значения формата YYYYMMDD
, но это самый близкий я пришел к решению.
Если у кого-то есть ответ, я буду очень благодарен!
EDIT: В связи с ответом Эд Чама проблема, скорее всего, связана с кодировкой. rep()
на подмножестве dataFrame дает:
OrdNo LstInvDt\n0
9 20070620\n1
11 20070830\n2
19 20070719\n3
21 20070719\n4
23 20070719\n5
26 20070911\n7
29 20070918\n8
31 0070816\n9
34 20070925\n10
Это когда LstInvDt
является dtype int64.