python pandas convert strings to datetime problems

Daiyue Weng daiyueweng at gmail.com
Mon Apr 11 12:08:39 EDT 2016


Hi, I need to compare the years in a Series. The values in the Series is
like '1996', '2015', '2006-01-02' or '20130101' etc. The code I created is,

col_value_series = pd.to_datetime(col_value_series, infer_datetime_format=True)
min_year = col_value_series.min().year
max_year = col_value_series.max().year

current_year = datetime.date.today().year

res1 = min_year > 1970
res2 = max_year < current_year
return min_year > 1970 and max_year < current_year

the code is working fine on the values like '20030101' and '2006-01-02',
which are converted to datetime, i.e. '2003-01-01'. But it converted values
'1996' or '2015' to '1970-01-01 00:00:00.000001996' and '1970-01-01
00:00:00.000002015', which are completely wrong (meaning the years are all
1970 now). So how to resolve the issue.

thanks



More information about the Python-list mailing list