Как указать тип временных данных при загрузке датафрейма?
Есть файлик с данными вида '%Y-%m-%d'
datetime_click
2017-03-01
2017-03-02
2017-03-03
2017-03-04
2017-03-05
Можно ли при загрузке его в датафрейм сразу указать для колонки формат datatime? Или другими словами что подставить сюда?
df = pd.read_csv('result.csv', dtype={'datetime_click':'????????????'})
Или каждый раз если я хочу фильтровать данные по времени мне надо конвертировать столбик с данными таким вот образом
def convert_to_datetime(row):
prom_data = datetime.strptime(row['datetime_click'], '%Y-%m-%d')
return prom_data
df['datetime_click'] = df.apply(convert_to_datetime, axis=1)
И только потом фильтровать с помощью следующего алгоритма
startDate = '2017-03-03'
endDate = '2017-03-04'
startDate_datetime = datetime.strptime( startDate, '%Y-%m-%d' )
endDate_datetime = datetime.strptime( endDate, '%Y-%m-%d' )
df = df[(df['datetime_click'] >= startDate_datetime) &
(df['datetime_click'] <= endDate_datetime)]
Нельзя ли как то сразу использовать этот алгоритм?
Ответы (1 шт):
Автор решения: MaxU
→ Ссылка
Воспользуйтесь параметром pd.read_csv(parse_dates=[...]):
df = pd.read_csv('result.csv', parse_dates=['datetime_click'])