python中有关时间⽇期格式转换问题
每次遇到pandas的dataframe某列⽇期格式问题总会哉坑,下⾯记录⼀下常⽤时间⽇期函数....
1、字符串转化为⽇期 str—>date
import datetime
date_str = '2006-01-03'
date_ = datetime.datetime.strptime(date_str,'%Y-&m-%d')
这是单个字符串的转化,其中“%Y-%m-%d”表⽰⽇期字符串的格式,若date_str='2006/1/3',则可写为“%Y/%m/%d”,以此类推。
⼀般地,我们经常会对dataframe的某⼀列进⾏操作:
可以应⽤apply函数:
def strptime_row(rowi):
return datetime.datetime.strptime(rowi,'%Y/%m/%d')
日期转字符串函数df['date'] = df['date'].apply(strptime_row)
可能apply()函数效率⽐较低⼀些,应该有专门针对某⼀列⽇期格式操作的函数,如
import pandas as pd
df['date'] = pd.to_datetime(df['date'])
to_datetime()函数可以解析多种不同的⽇期表⽰形式(如“7/6/2011”,2011年6⽉7⽇),对标准⽇期格式(如ISO8601)解析⾮常快。
还有parse()函数,⼏乎可以识别所有⼈类能够理解的⽇期表⽰⽅式(但遗憾的是中⽂不⾏),如:
from dateutil.parser import parse
parse('Jan 31,2008 10:45 AM')
2、⽇期转化为字符串
可以使⽤strftime()函数
总结
以上所述是⼩编给⼤家介绍的python中有关时间⽇期格式转换问题,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。在此也⾮常感谢⼤家对⽹站的⽀持!
如果你觉得本⽂对你有帮助,欢迎转载,烦请注明出处,谢谢!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论