pandas读取csv解析时间,抽取年月日

df = pd.read_csv(filename, parse_dates=['col1'])
read_csv还有一个参数date_parser可以定义一个方法,按照这个方法的格式去解析字符串成为datetime格式
如果读取的时间是'%Y-%m-%d %H:%M:%S'的格式
现在只取年月日,可以先
df = pd.read_csv(filename, parse_dates=['col1'])
df['date'] = pd.to_datetime(df['col1'].dt.date)
注:df['col1'].dt.date取出来dtype是object类型
另外一个人用的方法是
df['col1'].apply(lambda x : x.date())
这种方法就是对每一个元素取年月日,这个元素的对象含有一个date()方法取得年月日部分,取出来仍然是str,需要用pd.to_datetime进行转换
df['col1']的dtype是datetime64[ns],每一个对象属于类pandas._libs.tslib.Timestamp,就是pd.Timestamp,文档上说pd.Timestamp就等于python的datetime,datetime.datetime.date()就是取出一个datetime的年月日部分

留言

熱門文章