Python数据分析与可视化教案3.8 时间的转换与提取.docx
《Python数据分析与可视化教案3.8 时间的转换与提取.docx》由会员分享,可在线阅读,更多相关《Python数据分析与可视化教案3.8 时间的转换与提取.docx(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课 题3.8时间的转换与提取课 型讲练授课班级大数据授课时数2教学目标1 .理解 Times tmap、Timedelta、Dat etime Index 等时间类的作用。2 .能够创立时间类数据。3 .能够将文本型数据转换为时间类数据。教学重点1.能够将文本型数据转换为时间类数据。教学难点1.理解 Timestmap Timedelta、Datetimeindex 等时间类的作用。学情分析学情分析在任何数据分析中,常常需要处理时间类型的数据,比方从时间中提取 出年、月、日等信息,这些内容的学习可以提高学生预处理数据的能力。数据分析的对象不仅限于数值型和字符串型两种,常用的数据类型还包括了时间
2、 型,通过时间类型数据能够获取对应的年、月、日等信息。但是,从CSV数据中导入 数据时都是字符串的形式,无法实现大局部与时间相关的分析。因此,在进行数据序 列分析时,常常需要将字符型数据转换为时间性数据。pandas提供了多种与时间相关的类,各种时间类如表3-*所示:表3-* pandas时间相关类一、生成时间类数据类名称说明Timestmap基础的时间类,表示某个时间点,在数据分析中 经常需要从这个类中提取年、月、日的等信息。Timedelta表示时间间隔,如1天、2个小时等。Datetimeindex表示,组Timestmap构成索引Index,用来作为 DataFrame 或 Serie
3、s 的索弓1。Timestamp是最基础的时间类,表示某个时间点,在绝大多数场景中的时间都是 Timestamp形式的时间。1 ,生成Timestamp类数据在pandas中,如果要生成一个Timestamp类数据,可以先创立一个字符型的时 间数据,再转化为Timestamp类数据,其一般方法为:str = yearmonthday houriminuteisecond1pd.Timestamp(str)例如代码如下:import pandas as pdstr = 20200202 12:30:00*data = pd.Timestamp(str)print(ndata = H,data)p
4、rint,data 的数据类型为:H,type(data)输出结果如图3-求所示。3-8 xC:UsersliliangAnaconda3python.exe C:/Users/liliang/PycharmProjects/sjfx/3-8.py data = 2020-02-02 12:30:00data的数据类型为:Process finished with exit code 0图3-*生成一个Timestamp类数据例如结果2,生成Timedelta类数据在pandas中,如果要生成Timedelta类数据,可以先创立两个Timestamp类数据, 再通过运算得到,其一般方法为:pd
5、.Timestamp(str2) - pd.Timestamp(str 1) 例如代码如下:strl = 20200201 12:30:00str2 = 20200202 13:30:00*datal = pd.Timestamp(str 1) data2 = pd.Timestamp(str2) data = data2 - datal print(ndata = data)print(Hdata 的数据类型为:type(data) 输出结果如图3-*所示。Run:3-8C:UsersliliangAnaconda3python.exe C:/Users/liliang/PycharmPro
6、jects/sjfx/3-8.py data = 1 days 01:00:00data的数据类型为:Process finished with exit code 0图3-*生成Timedelta类数据例如结果3.生成Datetimeindex类序列在pandas中,Datetimeindex类序列可以作为DataFrame或Series的索引。在 DataFrame中,如果将时间序列设为时间索引,那么在数据查询时会减少处理时间, 提高效率。(1)利用列表生成如果要生成一个Datetimeindex类序列,可以先创立一个字符时间型列表,再转 化为Datetimeindex类序列,其一般方法为
7、:strjist 二田pd.to_Timedate(str_list)(2)利用 data_range 函数如果要生成一个Datetimeindex类序列,还可以利用data_range函数来生成,其 一般方法为:pd.data_range(start,stop,freq)其中,start表示开始时间,stop表示结束时间,freq表示时间频率,如freq=D 表示日,freq=H表示小时,freq二T表示分钟,freq二S表示秒。例如代码如下:list_str = 2020020r;20200202,;20200203,data = pd. to_dateti me(l i st_str)p
8、rint(ndata =tdata)print(Hdata 的数据类型为:,type(data)print,)data = pd.date_range(,20200201 12:00:00,;20200201 18:00:00,freq=H)print(Hdata = data)print(Mdata 的数据类型为:,type(data)输出结果如图3-*所示。Run:3-8AC:UsersliliangAnaconda3python.exe C:/Users/liliang/PycharmProjects/sjfx/3-8.pydata = Datetimelndex(,2020-02-01
9、, 2020-02-02, 2020-02-03, dtype=datetime64ns, freq=None) data的数据类型为:二 5U data = Datetimelndex(,2020-02-01 12:00:00, 2020-02-01 13:00:00, .2020-02-01 14:00:00, 2020-02-01 15:00:00,2020-02-01 16:00:00, 2020-02-01 17:00:00,2020-02-01 18:00:00,dtype=datetime64ns, freq=H)data的数据类型为:Process finished with
10、exit code 0图3-*生成Timedelta类数据例如结果二、转化时间数据在DataFrame中,导入的时间常常是字符串的形式,此时可以利用to_datetime 函数将将字符串的列转换为时间类型,其一般方法为:pd.to_datetime(DataFramecolumn)三、提取时间信息在处理时间数据时,常常需要提取时间中年、月、日等信息。在DataFrame中, 利用出方法可以提取一列数据中的年、月、日等信息,提取时间属性如表3-*所示:表3-*提取时间属性属性名称说明属性名称说明year年second秒month月date日期day日time时间hour小时weekday星期序号
11、,周一为0minute分钟weekday_name星期名称提取Timestamp时间信息的一般方法为:Timestamp.出.属性名称例如代码如下:import numpy as nparr = np.arange( 1,10).reshape(3,3)data = pd.DataFrame(arr,columns=,a,bVc,)datafd1 = 20200201 10:30:00V20200202 9:45:00,20200203 14:15:00,datad = pd.to_datetime(data*d)print(初始数据为:n”,data)print(提取 d 列中的月份为:n,
12、datad.dt.month)print。提取d列中的小时份为:rT,datad.dthour)输出结果如图3-*所示。3-8 xC:UsersliliangAnaconda3python.exe C:/Users/liliang/PycharmProjects/sjfx/3-8.py 初始数据为:a b cd01232020-02-0110:30:0014562020-02-0209:45:0027892020-02-0314:15:0001232020-02-0110:30:0014562020-02-0209:45:0027892020-02-0314:15:00提取d列中的月份为:02
13、1222Name: d, dtype: int64提取d列中的小时份为:01019214Name: d, dtype: int64Process finished with exit code 0图3-*提取时间信息例如结果任务实训任务 1: 利用 read_csv 导入 supermarket.csv (supermarket.csv 存放在 c:data 路径 中),导入时encoding参数使用,gbk,数据如图3-*所示。口 supermarket -记事本文件(F)编娟(E)格式(0)查看(V)帮助(H)订单ID产品ID,产品名称,客户,订单日期,发货日期US-2018-135714
14、4,办公用-用品-10002717/Fiskars 剪刀,蓝色”,曾惠-14485,2018/4/27,2018/4/29CN-2018-1973789,办公用-信封-10004832,GlobeWeis 搭扣信封,红色,许安-10165,2018/6/15,2018/6/19 CN-2018-1973789,办公用-装订-10001505/Cardinal 孔加固材料,回收,许安-10165,2018/6/15,2018/6/19 US-2018-3017568,办公用-用品-10003746;Kleencut 开信刀,工业,宋良-17170,2018/12/9,2018/12/13 CN-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python数据分析与可视化 教案 3.8 时间的转换与提取 Python 数据 分析 可视化 时间 转换 提取
限制150内