Pandas数据分析快速上手500招(微课视频版)
上QQ阅读APP看书,第一时间看更新

048 读取文本文件的数据并解析日期列数据

此案例主要通过在read_csv()函数中设置parse_dates参数值和date_parser参数值,实现读取以空格分隔数据的文本文件,并据此在创建DataFrame时将字符串表示的日期数据转换成datetime64[ns]类型。当在Jupyter Notebook中运行此案例代码之后,将自动读取文本文件(myspace.txt),并据此在创建DataFrame时自动把上市日期列的字符串日期数据转换成datetime64[ns]日期类型,如将“公元2021年2月26日”转换成“2021-02-26”,效果分别如图048-1和图048-2所示。

图048-1

图048-2

主要代码如下。

在上面这段代码中,pd.read_csv('myspace.txt',delim_whitespace=True, parse_dates=['上市日期'],date_parser=lambda x:datetime.strptime(x,"公元%Y年%m月%d日"))表示读取以空格分隔数据的文本文件(myspace.txt),并据此在创建DataFrame时根据lambda表达式的解析结果转换上市日期列的数据类型为datetime64[ns];如果仅设置了参数parse_dates=['上市日期'],未设置参数date_parser,则不能将上市日期列的数据转换为datetime64[ns]。

此案例的主要源文件是MyCode\H199\H199.ipynb。