excel的读取--(7)parse_dates参数


 

 

 

第一种情况不用传date_parser参数,Python会自动解析,第二种则需要手动传入。

 

 

 

 

import pandas as pd
df=pd.read_excel(
    'pandas_excel_parse.xlsx',
    )
print(df.dtypes)

 

 

 

 

 

1、parse_dates=True  尝试将格式解析成日期格式,解析不成功也不会出错,只按原格式输出

 

 

 

import pandas as pd
df=pd.read_excel(
    'pandas_excel_parse.xlsx',
    index_col=2 #设置第三列为行索引
)
print(df.index)

可以看到索引是object类型,不是日期类型。

 

 

 如果要将行索引设置为日期类型的话,可以这么操作:

#1、pasre_date=True尝试解析index为日期类型
import pandas as pd
df=pd.read_excel(
    'pandas_excel_parse.xlsx',
    index_col=2, #设置第三列为行索引
    parse_dates=True #将行索引设置为日期类型
)
print(df.index)

 

 

 

 

#2、 parse_dates=[0,1]或者['列名1','列名2'],尝试将指定列解析为日期类型
import pandas as pd
df=pd.read_excel(
    'pandas_excel_parse.xlsx',
    parse_dates=[0,1,2,3,4,5,6] #将所有列解析为日期类型
    # parse_dates =['日期0','日期1']  #也可以这样
    )
print(df.dtypes)

 

 

 

 

 

#3、parse_date=[[0,1,2]] 或者parse_dates=[['列名1','列名2','列名3']]结合多列解析为单个日期列
import pandas as pd
df=pd.read_excel(
    'pandas_excel_parse.xlsx',
    sheet_name=1,
    # parse_dates=[[0,1,2]] #年、月、日三列拼接成一个日期格式
    parse_dates=[['','','']] #或者这样

    )
print(df.dtypes)
print(df)

 

 

 

#4、 同上,将列名改为“日期”
import pandas as pd
df=pd.read_excel(
    'pandas_excel_parse.xlsx',
    sheet_name=1,
    # parse_dates={'日期':[0,1,2]} #年、月、日三列拼接成一个日期格式,利用字典,将key名指定为列名
    parse_dates={'日期':['','','']} #或者这样

    )
print(df.dtypes)
print(df)

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM