每次遇到pandas的dataframe某列日期格式問題總會哉坑,下面記錄一下常用時間日期函數....
1、字符串轉化為日期 str―>date
import datetimedate_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 pddf['date'] = pd.to_datetime(df['date'])
to_datetime()函數可以解析多種不同的日期表示形式(如“7/6/2011”,2011年6月7日),對標準日期格式(如ISO8601)解析非常快。
還有parse()函數,幾乎可以識別所有人類能夠理解的日期表示方式(但遺憾的是中文不行),如:
from dateutil.parser import parseparse('Jan 31,2008 10:45 AM')
2、日期轉化為字符串
可以使用strftime()函數
總結
以上所述是小編給大家介紹的python中有關時間日期格式轉換問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
新聞熱點
疑難解答