Pandas.read_csv日期格式

时间:2015-12-04 17:44:45

标签: python parsing datetime pandas

标记错误。但是,我计划做的是采用DateDptDateAr并查看它们之间的范围,即DatePpt - DateAr。因此,我可以循环查看日期的差异,并找到它们之间的其他日期,考虑到最大差异和到达和离开的地点。

import datetime
import pandas.io.data
from pandas_datareader import data, wb
import csv
import time

df = pd.read_csv('data.csv')
df.DateDpt = pd.to_datetime(df.DateDpt, format='%y-%m-%d')
df.DateAr = pd.to_datetime(df.DateAr, format='%y-%m-%d')
print df

数据:

ID     ArCityArCountry      DptCityDptCountry   DateDpt     DateAr
1922   ParisFrance          NewYorkUnitedState  2008-03-10  2001-02-02
1002   LosAngelesUS         CaliforniaUS        2008-03-10  2008-12-01
1901   ParisFrance          LagosNigeria        2001-03-05  2001-02-02
1922   ParisFrance          NewYorkUSt          2011-02-03  2008-12-01
1002   ParisFrance          CaliforniaUS        2003-03-04  2002-03-04
1099   ParisFrance          BeijingChina        2011-02-03  2009-02-04
1901   LosAngelesUS         ParisFrance         2001-03-05  2001-02-02

错误:

ValueError: time data '2008-03-10' does not match format '%y-%m-%d' (match)

2 个答案:

答案 0 :(得分:1)

世纪的年份是大写Y。因此,您的格式应为%Y-%m-%d

您可能会发现此备忘单以方便日后参考:http://strftime.org/

答案 1 :(得分:1)

格式字符串中的小写y表示它正在寻找“没有世纪作为零填充十进制数的年份”(来自datetime docs)。使用大写Y作为世纪的年份。