Python使用pandas把字符串转换为日期时间数据

Python使用pandas把字符串转换为日期时间数据


功能描述

把pandas二维数组DataFrame结构中的日期时间字符串转换为日期时间数据,然后进一步获取相关信息。

重点演示pandas函数to_datetime()常见用法,函数完整语法为:

pandas.to_datetime(arg, errors='raise', dayfirst=False, yearfirst=False, utc=None, format=None, exact=True, unit=None, infer_datetime_format=False, origin='unix', cache=True)

例子

df = pd.DataFrame({'year': [2015, 2016],
                   'month': [2, 3],
                   'day': [4, 5]})
pd.to_datetime(df)
0   2015-02-04
1   2016-03-05
dtype: datetime64[ns]
pd.to_datetime('13000101', format='%Y%m%d', errors='ignore')
datetime.datetime(1300, 1, 1, 0, 0)
pd.to_datetime('13000101', format='%Y%m%d', errors='coerce')
NaT

format参数的作用:

import pandas as pd

dt=pd.to_datetime('20200511')
print(dt,type(dt))
print(dt.day,dt.day_name(),dt.dayofweek,dt.isoweekday(),'\n',
     dt.dayofyear,dt.quarter,
     dt.daysinmonth,#所在月总天数
     dt.is_leap_year,#所在年是否为闰年
     dt.month_name(),sep=',')
print(dt.to_pydatetime(),type(dt.to_pydatetime))
print(pd.to_datetime('20201122'))
print(pd.to_datetime('20200122'))
print(pd.to_datetime('2020年5月11日14时29分8秒',format='%Y年%m月%d日%H时%M分%S秒'))

'''
2020-05-11 00:00:00 
11,Monday,0,1,
,132,2,31,True,May
2020-05-11 00:00:00 
2020-11-22 00:00:00
2020-01-22 00:00:00
2020-05-11 14:29:08
'''

 

你可能感兴趣的:(数据处理)