Skip to content

Instantly share code, notes, and snippets.

@regispires
Last active May 15, 2020 17:12
Show Gist options
  • Save regispires/5d3b13ac6c8760a010ed4b2405285b4a to your computer and use it in GitHub Desktop.
Save regispires/5d3b13ac6c8760a010ed4b2405285b4a to your computer and use it in GitHub Desktop.
Pandas Import Data with Rigid DateTime Format Check
# some parsers that you can use in pandas_import_data_with_dt_check.py
datetime_parser_en_us = lambda x: pd.to_datetime(x, format='%m/%d/%Y %H:%M:%S')
datetime_parser_bt_br = lambda x: pd.to_datetime(x, format='%d/%m/%Y %H:%M:%S')
datetime_parser_global= lambda x: pd.to_datetime(x, format='%Y-%m-%d %H:%M:%S')
date_parser_en_us = lambda x: pd.to_datetime(x, format='%m/%d/%Y')
date_parser_pt_br = lambda x: pd.to_datetime(x, format='%d/%m/%Y')
date_parser_global= lambda x: pd.to_datetime(x, format='%Y-%m-%d')
import pandas as pd
from io import StringIO
csv_str = '''
dt1,dt2
01/13/2020 09:45:00,13/01/2020
01/04/2020 23:21:00,01/04/2020
'''
date_parser_en_us = lambda x: pd.to_datetime(x, format='%m/%d/%Y')
date_parser_pt_br = lambda x: pd.to_datetime(x, format='%d/%m/%Y')
df = pd.read_csv(StringIO(csv_str), converters={'dt1': datetime_parser_en_us, 'dt2': date_parser_pt_br})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment