2016-05-12 7 views
0

Из запроса, выполненного с использованием Microsoft SQL Server, я экспортировал файл csv, который я хотел бы загрузить в фрейм данных с помощью pandas. Здесь у меня есть несколько столбцов, которые содержат значения времени. В Microsoft SQL обычно указываются значения времени даты. Однако при экспорте в csv значения времени даты меняются, я думаю, что float. Вот пример:Преобразование формата DateTime Excel в DateTime Pandas

 DateTime 1  Datetime 2 
     20/04/16 07:15 13:00.0 
     15:00.0   13:00.0 
     15:00.0   13:00.0 
     15:00.0   13:00.0 
     15:00.0   13:00.0 
     15:00.0   13:00.0 
     15:00.0   13:00.0 
     15:00.0   13:00.0 
     15:00.0   13:00.0 

В первой строке вы видите значение времени даты, которое находится за целым числом. Он «появляется», когда я вхожу в ячейку в excel и нажимаю enter ... Когда я загружаю это в pandas с read_csv, загружается 15: 00.0, а не 20/04/16 07:15.

Я попытался изменить столбец на datetime с помощью пакета xrld из Python, к сожалению, у него не было ожидаемого результата.

Какой формат это точно, и можно ли написать код для автоматизации преобразования столбцов datetime?

ответ

3

При чтении файла следует указать parse_dates=True или parse_dates=['column name'].

df = pd.read_csv('filename.csv',parse_dates=['column_name']

См документации для получения дополнительной информации. http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html

+0

Рад, что это вам помогло. – shivsn

+0

Hi shivsn, как-то он перестает работать. даты синтаксиса не распознают форматы дат. Любые идеи почему? – Uis234

+0

попробуйте этот 'pd.to_datetime (data ['DateTime1'])' – shivsn

Смежные вопросы