版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《pandas数据处理》教案课题创建学生成绩表课时2课型新课教学目标能列举pandas的两种数据类型能描述创建数据框的方法能按要求创建数据框教学重点及突破方法创建数据框(微视频引领、学生操作尝试)教学难点及化解方法按要求创建数据框(微视频引领、学生操作尝试)教学方法讲授法、演示法、操作法教学资源微视频、PPT教学过程教学环节(时长)教学内容教师活动学生活动设计意图创设情景明确任务5创建一个学生成绩表,学科有“shuxue”、“yuwen”、“yingyu”、“shengwu”,具体内容见表1.1.1。创设情景,引导学生思考如何在pandas中创建表?思考如何在pandas中创建学生成绩表?创建情景,调动学生学习的积极性实施任务分析解题思路10提出问题:表的列名和行名分别是什么,数据有哪些?将表中的成绩数据存入一个列表中,调用pandas.DataFrame()创建数据框对象,用列表作为第一个参数,表示数据框的数据,用参数columns指定列索引即各列的名称,用参数index指定行索引即各行的名称。分析解题的思路思考问题,聆听教师的讲解教师以问题引导学生主动思考,体现学生在课堂上的主体地位实施任务分析程序代码20importpandasaspd①将pandas模块作为pd导入,因为pandas是python的的第三方库,所以使用前需要用命令pipinstallpandas进行安装。
d=[
[95,99,89,60],
[77,56,68,58],
[92,88,29,98],
[22,54,73,62]
]②创建一个列表存放各科成绩。列表中的每一项又是一个列表,代表了一名学生各学科的成绩。
data=pd.DataFrame(d,columns=['shuxue','yuwen','yingyu','shengwu'],index=[['banji1','banji1','banji2','banji2'],['XiaoMing','HanHan','GeYou','FengGong']])
③调用pd.DataFrame()创建数据框对象。第一个参数d表示数据框数据。关键字参数columns=['shuxue','yuwen','yingyu','shengwu']用于指定列索引,即各列的名称。关键字参数index=[['banji1','banji1','banji2','banji2'],['XiaoMing','HanHan','GeYou','FengGong']]用于指定行索引,即每行的名称,因为表中每一行有两个名称,所以是一个两级索引,传入的列表也是一个二维列表,每一行表示一个级别的索引,不管哪一级索引,其数量都与数据框的行数相同。print(data)分析程序代码1.聆听教师的讲解2.理解程序代码的含义和作用学习编写程序代码解决问题分享评价5展示学生调试结果组织学生评价操作过程学生展示分享提高回顾总结3调用pandas.DataFrame()创建数据框对象,列表作为第一个参数,参数columns指定列索引,参数index指定行索引。引导学生回顾教学内容说出创建数据框的方法温故而知新拓展提升2创建一个商品价目表,如表1.1.3所示布置拓展任务及强调任务要求写出程序代码、运行调试学生写出程序教学反思《pandas数据处理》教案课题统计各学科的得分信息课时2课型新课教学目标能读入Excel中的数据能查找、修改数据能计算总分、平均分、最高分、最低分以及排序教学重点及突破方法1.调用pd.read_excel()函数读入Excel中的数据2.计算总分、平均分、最高分、最低分以及排序(微视频引领、学生操作尝试)教学难点及化解方法iloc和loc切片方法(微视频引领、学生操作尝试)教学方法讲授法、演示法、操作法教学资源微视频、PPT教学过程教学环节(时长)教学内容教师活动学生活动设计意图创设情景明确任务5读入excel文件“2019级电商1班学生成绩表.xlsx",数据见表1.1.4,在“2019级电商1班学生成绩表”中,完成如下任务操作:1.修改龚林的名字为龚琳。2.将请假的考试科目记0分,见表1.1.4中加框的数据。3.求出各个同学的总分,并按照总分从高到低排序。4.在每列的最后分别求出各个科目的平均分、最高分、最低分。创设情景,引导学生思考怎样读入Excel中的数据,怎样查找、修改,计算?思考老师提出的问题?创建情景,调动学生学习的积极性实施任务分析解题思路10Excel数据表的读入和数据计算,需要分别用pipinstallopenpyxl和pipinstallnumpy安装第三方库。使用pd.read_excel(r“文件保存路径”)将Excel工作表中的数据读入到DataFrame,用iloc查询数据,用replace替换数据,用numpy.sum()、numpy.mean()、numpy.max()和numpy.min()分别计算总分、平均分、最高分和最低分,使用sort_values对数据进行排序。分析解题的思路思考问题,聆听教师的讲解教师以问题引导学生主动思考,体现学生在课堂上的主体地位实施任务分析程序代码20importpandasaspdimportnumpyasnp①将numpy模块以np为别名导入,因为numpy是python的第三方库,所以使用前需要用命令pipinstallnumpy进行安装。data=pd.read_excel(r"D:\pydata\项目一\2019级电商1班学生成绩表.xlsx")②调用pd.read_excel()函数读入Excel文件"2019级电商1班学生成绩表.xlsx"中的数据,函数执行后会返回包含excel文件数据的数据框,赋值给变量data。pd.read_excel()函数会使用第三方模块openpyxl,所以需要提前使用命令pipinstallopenpyxl安装该模块。data.iloc[3,1]="龚琳"③使用iloc属性定位第4行第2列(行、列下标从0开始)的数据,并将其修改为“龚琳”。iloc使用下标定位数据,方括号中的值必须为整数。iloc[3,1]中第一个下标表示行下标,第二个下标表示列下标,都是从0开始计数,所以行下标3表示第4行,列下标1表示第2列。data.replace("请假",0,inplace=True)④使用replace函数将数据框中的值“请假”替换为0,inplace表示是否在原数据上修改,默认为False,表示不修改原数据,设置为True则会修改原数据。data["总分"]=data.iloc[:,2:].apply(np.sum,axis=1)计算每个学生各学科的总分赋值给“总分”列。data.iloc[:,2:]选择所有行(行切片”:”表示所有行)从第3列开始到最后的所有列(列切片”2:”表示从第3列开始到最后的所有列)。apply(np.sum,axis=1)使用apply()方法对每一行的数据求总和,即计算总分。其中第一个参数np.sum(求总和函数)是要应用到数据框每一行数据的函数,即以每一行的数据为参数求总和。axis表示方向,0表示按列方向求和,1表示按行方向求和。最后将求得的和赋给“总分“列。data.sort_values(by="总分",ascending=False,inplace=True)使用sort_values进行排序,by指定按照“总分”排序,ascending默认为True表示升序排序,False表示降序排序,inplace设置为True则表示会修改原数据。data=data.append(round(data.loc[:,"语文":"总分"].apply([np.mean,np.max,np.min],axis=0),2),ignore_index=True)计算各学科的统计值并添加到数据框的末尾。data.loc[:,"语文":"总分"]使用loc属性选择“语文”到“总分”之间的所有列。apply([np.mean,np.max,np.min],axis=0)表示对每一列数据应用函数进行统计。关键字参数axis=0表示将函数应用到每一列数据,即用每一列数据作为参数调用函数。[np.mean,np.max,np.min]表示对每一列依次应用np.mean()、np.max()和np.min()求出平均分、最高分和最低分。round(apply([np.mean,np.max,np.min],axis=0),2)表示对apply([np.mean,np.max,np.min],axis=0)求出的数据框中的每一个值四舍五入保留两位小数。ignore_index表示忽略被添加行的索引['mean','amax','amin']。append()方法返回添加行以后的数据框,但原数据框并不发生改变,所以需要将返回值赋给变量data,才能保存计算结果。data.iloc[-3:,1]=["平均分","最高分","最低分"]使用iloc属性将最后三行第二列的数据依次修改为“平均分”、“最高分”和“最低分”。在行切片中-3表示倒数第3行,“-3:“表示从倒数第3行开始到最后一行,即最后3行。data.iloc[-3:,:1]=""=9\*GB3⑨⑨将第一列最后三行的NaN改为空字符串。print(data)分析程序代码1.聆听教师的讲解2.理解程序代码的含义和作用学习编写程序代码解决问题分享评价5展示学生调试结果组织学生评价操作过程学生展示分享提高回顾总结3调用pd.read_excel()函数读入Excel中的数据iloc和loc切片方法计算总分、平均分、最高分、最低分以及排序引导学生回顾教学内容说出相关知识要点温故而知新拓展提升2在“2019级电商1班学生成绩表”的任务中,将程序代码里使用的iloc()方法修改为loc()方法,实现同样的功能。布置拓展任务及强调任务要求写出程序代码、运行调试学生写出程序教学反思《pandas数据处理》教案课题查询总价最高的10个订单课时2课型新课教学目标能读取csv中的数据能按要求转换数据类型能计算总价,并取总价最高的10个订单教学重点及突破方法调用read_csv()函数读取csv文件转换数据类型(微视频引领、学生操作尝试)教学难点及化解方法计算总价,并取总价最高的10个订单(微视频引领、学生操作尝试)教学方法讲授法、演示法、操作法教学资源微视频、PPT教学过程教学环节(时长)教学内容教师活动学生活动设计意图创设情景明确任务5在订单数据表1.1.17中,查询总价最多的10个订单。创设情景,引导学生思考怎样读入csv中的数据,查询总价最多的10个订单?思考老师提出的问题?创建情景,调动学生学习的积极性实施任务分析解题思路10pandas读取csv文件可通过read_csv()函数来实现,将字符串类型的“单价”数据使用astype()函数强制转换成浮点型。然后利用“单价“和”数量“计算各订单的总价。最后用sort_values()方法对”总价“进行排序,用head()方法取数据表中的前10行数据。分析解题的思路思考问题,聆听教师的讲解教师以问题引导学生主动思考,体现学生在课堂上的主体地位实施任务分析程序代码20importpandasaspdimportnumpyasnpdata=pd.read_csv(r"D:\pydata\项目一\订单数据表.csv",encoding='gbk')=1\*GB3①=1\*GB3①使用read_csv()函数读取csv文件中的数据。参数encoding='gbk'表示编码方式为'gbk',如果打开文件的编码方式与文件本身的编码方式不一致将导致文件内容不能正确解码。data["单价"]=data["单价"].str[1:].astype(float)=2\*GB3②=2\*GB3②将数据框中的“单价”列转换为实型。"单价"列原为字符型,字符型序列的str属性可以调用str类方法操作字符型序列中的值。用str属性的切片str[1:]取字符串从1开始到最后一个字符的子串,相当于去掉“$”符号。调用astype(float)方法将上述序列转换成浮点型值,并赋值给"单价"列。data['总价']=data["单价"]*data['数量']=3\*GB3③=3\*GB3③计算总价。data["单价"]*data['数量']计算“单价”列和“数量”列的乘积,两个序列相乘的结果,通过赋值,将这个序列以“总价”为列名添加到数据框的最后一列之后。结果如表1.1.21所示。data.sort_values(by='总价',ascending=False,inplace=True)=4\*GB3④=4\*GB3④使用sort_values进行排序,其中by指定按照“总价”排序,ascending=False为降序排序,inplace=True表示会修改原数据。排序结果如表1.1.22所示。data=data.head(10)=5\*GB3⑤=5\*GB3⑤data.head(10)表示取数据表中的前10行数据。
print(data)分析程序代码1.聆听教师的讲解2.理解程序代码的含义和作用学习编写程序代码解决问题分享评价5展示学生调试结果组织学生评价操作过程学生展示分享提高回顾总结31.通过read_csv()函数读取csv文件;2.使用astype()函数将字符串类型强制转换成浮点型;3.用sort_values()方法进行排序;4.用head()方法取数据表中的前几行数据。引导学生回顾教学内容说出相关知识要点温故而知新拓展提升2在“订单数据表”中,按总价升序排序后,取订单最后十个数据。布置拓展任务及强调任务要求写出程序代码、运行调试学生写出程序教学反思《pandas数据处理》教案课题筛选出计算机老师课时2课型新课教学目标能根据要求填充空值能筛选出所需的数据教学重点及突破方法1.填充空值2.筛选出所需的数据(微视频引领、学生操作尝试)教学难点及化解方法筛选出所需的数据(微视频引领、学生操作尝试)教学方法讲授法、演示法、操作法教学资源微视频、PPT教学过程教学环节(时长)教学内容教师活动学生活动设计意图创设情景明确任务5在“某学校五星教师培养对象参培名单”中,完成如下任务操作:1.在备注列填充空值为“住宿”2.筛选出所有的计算机老师创设情景,引导学生思考怎样填充空值,怎样筛选数据?思考老师提出的问题?创建情景,调动学生学习的积极性实施任务分析解题思路10使用fillna()填充空值NAN,用query()筛选出符合条件的数据。分析解题的思路思考问题,聆听教师的讲解教师以问题引导学生主动思考,体现学生在课堂上的主体地位实施任务分析程序代码20importpandasaspd
data=pd.read_excel(r"D:\pydata\项目一\某学校五星教师培养对象参培名单.xls",skiprows=1)
=1\*GB3①使用pd.read_excel()函数导入Excel工作表数据。data['备注'].fillna("住宿",inplace=True)=2\*GB3②用fillna()将'备注'列的空值填充为“住宿”,因为需要在原DataFrame中修改,所以关键字参数inplace设置为True。空值填充之后的结果见表1.2.4。
data=data.query("任教学科=='计算机'")③语句data.query("任教学科=='计算机'")筛选出“任教学科”列中的“计算机”老师。
print(data)分析程序代码1.聆听教师的讲解2.理解程序代码的含义和作用学习编写程序代码解决问题分享评价5展示学生调试结果组织学生评价操作过程学生展示分享提高回顾总结31.使用fillna()填充空值NAN;2.使用query()筛选出符合条件的数据。引导学生回顾教学内容说出相关知识要点温故而知新拓展提升2同样在“某学校五星教师培养对象参培名单”中,筛选出所有“育人之星”的老师,结果如表1.2.6所示。布置拓展任务及强调任务要求写出程序代码、运行调试学生写出程序教学反思《pandas数据处理》教案课题查找联考专业成绩在350分以上的计算机专业男生课时2课型新课教学目标能根据所需条件查找数据能查找出同时满足多个条件的数据教学重点及突破方法按要求查找出满足条件的数据(微视频引领、学生操作尝试)教学难点及化解方法查找满足多个条件的数据(微视频引领、学生操作尝试)教学方法讲授法、演示法、操作法教学资源微视频、PPT教学过程教学环节(时长)教学内容教师活动学生活动设计意图创设情景明确任务5在“高职培优班名单”中,查找出联考专业成绩在350分以上的计算机专业的男生。“高职培优班名单”见表1.2.7。创设情景,引导学生思考需要查找的数据条件有哪些,怎样查找出满足多个条件的数据?思考老师提出的问题?创建情景,调动学生学习的积极性实施任务分析解题思路10使用query()筛选出符合多个条件的数据。多个条件如果同时成立,用and连接,如果只需要成立一个则用or连接。分析解题的思路思考问题,聆听教师的讲解教师以问题引导学生主动思考,体现学生在课堂上的主体地位实施任务分析程序代码20importpandasaspd
data=pd.read_excel(r"D:\pydata\项目一\高职培优班名单.xlsx",sheet_name="学生全部名单")=1\*GB3①使用pd.read_excel()函数导入Excel工作表数据,其中sheet_name="学生全部名单"表示导入“学生全部名单”这个工作表中的数据,如果不指定参数sheet_name则导入第一个工作表。
data=data.query("联考专业总分>350and专业=='计算机类'and性别=='男'")②用query()方法筛选出同时满足“联考专业总分>350”,“专业=='计算机类'”和“性别=='男'”这三个条件的数据。因为三个条件要同时满足,所以用and连接这三个条件。结果如表1.2.8所示。
print(data)分析程序代码1.聆听教师的讲解2.理解程序代码的含义和作用学习编写程序代码解决问题分享评价5展示学生调试结果组织学生评价操作过程学生展示分享提高回顾总结3使用query()方法筛选出符合多个条件的数据。多个条件如果同时成立,用and连接,如果只需要成立一个则用or连接。引导学生回顾教学内容说出相关知识要点温故而知新拓展提升2在“高职培优班名单”中,查找出联考文化成绩在200分以上的会计类专业的女生。结果如表1.2.10所示布置拓展任务及强调任务要求写出程序代码、运行调试学生写出程序教学反思《pandas数据处理》教案课题找出姓张的同学课时2课型新课教学目标能查找姓“张”的同学能筛选出所有姓“张”同学的信息教学重点及突破方法筛选出所有姓“张”同学的信息(微视频引领、学生操作尝试)教学难点及化解方法查找以某个字符开头的数据(微视频引领、学生操作尝试)教学方法讲授法、演示法、操作法教学资源微视频、PPT教学过程教学环节(时长)教学内容教师活动学生活动设计意图创设情景明确任务5在“学生信息”表中,找出所有姓张的同学的数据。学生信息表如表1.3.1所示。创设情景,引导学生思考怎样找出所有姓张的同学信息?思考老师提出的问题?创建情景,调动学生学习的积极性实施任务分析解题思路10如果序列的数据类型是字符型,可以使用序列str属性的startswith()方法表示以某个字符串开头的值。startswith('张')就表示姓氏为'张'的姓名。分析解题的思路思考问题,聆听教师的讲解教师以问题引导学生主动思考,体现学生在课堂上的主体地位实施任务分析程序代码20importpandasaspd
data=pd.read_excel(r"D:\pydata\项目一\学生信息.xlsx")data=data.query("姓名.str.startswith('张')",engine='python')
=1\*GB3①在query()方法中用str属性的startswith()方法表示“姓名”列以字符“张”开头的列。engine='python'表示使用python引擎进行查询,引擎不同查询条件的语法用所区别,一般情况下使用python引擎,如果要使用其他引擎请查询文档。查询结果如表1.3.2所示。print(data)分析程序代码1.聆听教师的讲解2.理解程序代码的含义和作用学习编写程序代码解决问题分享评价5展示学生调试结果组织学生评价操作过程学生展示分享提高回顾总结31.使用字符型序列的str属性startswith()方法,查找以某个字符串开头的值。
2.使用query()方法筛选出符合条件的数据。引导学生回顾教学内容说出相关知识要点温故而知新拓展提升2在“学生信息”表中,找出所有户籍在九龙坡区姓陈的同学的数据。结果如表1.3.5所示。布置拓展任务及强调任务要求写出程序代码、运行调试学生写出程序教学反思《pandas数据处理》教案课题计算老师的上课时间课时2课型新课教学目标能提取教学互动时间能计算出上课时间和上课学时能按需求添加列教学重点及突破方法计算上课时间和上课学时(微视频引领、学生操作尝试)教学难点及化解方法使用正则表达式提取教学互动时间(微视频引领、学生操作尝试)教学方法讲授法、演示法、操作法教学资源微视频、PPT教学过程教学环节(时长)教学内容教师活动学生活动设计意图创设情景明确任务5在“电商部教师线上教学课时”表中,计算出老师的上课时间和上课学时。原始数据如表1.3.6所示。创设情景,引导学生思考怎样计算上课总时长?思考老师提出的问题?创建情景,调动学生学习的积极性实施任务分析解题思路10调用str.extract()方法使用正则表达式从字符数据中抽取匹配的分组数据,添加所需列,将字符串类型数据转换为整型数据,分别计算出“开始”、“结束”时间,再计算出“上课时间”和“上课学时”。分析解题的思路思考问题,聆听教师的讲解教师以问题引导学生主动思考,体现学生在课堂上的主体地位实施任务分析程序代码20importpandasaspd
importre=1\*GB3①引入正则表达式re模块,re是内置模块,不需要安装。
data=pd.read_excel(r"D:\pydata\项目一\电商部教师线上教学课时核对后.xlsx")
lt=pile('(\d+)[^\d]+(\d+)[^\d]+(\d+)[^\d]+(\d+)')=2\*GB3②使用pile()编译正则表达式给对象lt,正则表达式中(\d+)表示匹配一个或多个数字,[^\d]表示匹配除数字以外的任意字符。圆括号括起来的内容表示一个捕获组。
temp=data['
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电商销售发货操作技术指引
- 慢病风险量化评估流程
- 会员转介绍激励管理规范
- 西兰花花球发育期管理标准
- 中医基础理论考试试卷及详解
- 农产品质量安全追溯体系方案
- 果品采后气调库储藏管理技术规程
- 多人中毒事故现场救援处置
- 专用杀菌剂安全使用规范指南
- 婴幼儿良好睡眠习惯培养指引
- ARCGIS中提取坡位方法
- 解除党纪处分影响期申请书
- 加油站动火作业安全管理制度
- 电力电子技术第二版张兴课后习题答案
- 人们通过竞争才会取得更大的成功
- LY/T 2103-2013根径立木材积表编制技术规程
- GB/T 9445-2015无损检测人员资格鉴定与认证
- 第五章 井间地震
- 国际商务谈判课件(同名951)
- 高二期中考试后家长会课件
- 2023年新教科版科学六年级下册学生活动手册答案
评论
0/150
提交评论