版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《pandas数据处理》教案课题绘制各班专业课平均成绩柱状图课时1.5课型新课教学目标在数据框中提取指定的数据列使用groupby()方法对数据分组使用plot()或plot.bar()方法绘制柱状图扩展知识,绘制黑白图教学重点及突破方法数据的筛选、分组和聚合操作绘图方法的使用(微视频引领、学生操作尝试)教学难点及化解方法数据的筛选、分组和聚合操作(微视频引领、学生操作尝试)教学方法讲授法、演示法、操作法教学资源微视频、PPT教学过程教学环节(时长)教学内容教师活动学生活动设计意图创设情景5在现实生活中,阅读大量的数据是非常枯燥的工作,而数据图形化能够高效地展示数据包含的信息。现有某学校期末考试学生成绩汇总表,要求按班级统计各科目的平均分,并采用柱状图的形式展示结果。创设情景,引导学生分析怎样提取绘图用到的数据列和分班级求课程平均成绩?探讨什么是柱状图?思考什么是柱状图?怎样绘制柱状图?创建情景,调动学生学习的积极性;教师以问题引导学生主动思考,体现学生在课堂上的主体地位明确任务绘制各班专业课平均成绩柱状图展示任务明确任务任务驱动实施任务解决中文乱码10importpandasaspdfrompylabimportpltplt.rcParams['font.sans-serif']=['SimHei']①plt.rcParams['axes.unicode_minus']=False②①设置显示中文字体,否则中文显示乱码。②设置正常显示负号。①和②是固定写法,后文不再赘述。1.讲解模块导入,中文及负号的正常显示2.布置任务,让学生操作验证1.聆听教师的讲解2.自行操作掌握汉字显示方法实施任务数据处理20grade=pd.read_excel(r"D:\pydata\项目六\计算机专业成绩.xlsx")③grade=grade.loc[:,['班级','C语言(70分)','数据结构(70分)','算法分析(60分)']]④res=grade.groupby('班级').agg('mean')⑤③调用read_excel()方法读取成绩文件,需要给定文件路径。读入的数据存储在变量grade中,grade是一个数据框对象。④筛选出数据框中所有行的“班级”,“C语言(70分)”,“数据结构(70分)”和“算法分析(60分)”列,去掉与绘图无关的列。⑤对数据框按“班级”进行分组,得到分组对象,再调用agg('mean')方法计算分组均值。得到的结果是一个以“班级”为行索引的数据框对象res。1.讲解数据筛选、分组和聚合方法2.布置任务,让学生操作验证1.聆听教师的讲解2.自行操作掌握数据筛选、分组和聚合方法实施任务绘制柱状图20res.plot(kind='bar',rot=0,title='各班专业课平均成绩柱状图',figsize=(16,9))⑥plt.show() ⑦⑥调用res.plot()方法绘图。参数kind=“bar”表示绘制柱状图;title设置图像标题;figsize设置图像大小,单位是英寸;rot设置轴刻度标签(ticks)的旋转角度,0为水平,90为垂直;以行索引班级名称为横轴刻度标签(xticks),列索引为图例(legend)。默认按“列”绘图,先绘制第一列C语言,即在四个班的横坐标位置处各绘制一个表示C语言平均分的矩形条,用这个方法再依次绘制第二列数据结构和第三列算法分析的矩形条。请注意矩形条绘制的顺序与排列的顺序不同。⑦调用plt.show()方法显示绘制图像,这是固定写法。1.讲解plot()方法的使用2.介绍plot()方法参数的意义3.布置任务,让学生使用plot()方法1.聆听教师的讲解。2.完成任务,验证操作。让学生在完成任务的过程中发现问题,并想办法解决问题分享评价展示学生作品组织学生评价操作过程学生展示分享提高回顾总结31.编程步骤2.数据筛选、分组和聚合方法3.掌握plot()方法使用引导学生回顾教学内容说出编程步骤和plot()方法参数的意义温故而知新拓展提升2如教材中表6.1.8所示,请统计001班每个学生的平均成绩,并绘制柱状图。布置拓展任务及强调任务要求完成数据处理和绘图操作引导学生自己尝试编写程序教学反思《pandas数据处理》教案课题绘制股票收益率折线图课时2课型新课教学目标使用plot()绘制折线图pandas其他绘图类型介绍教学重点及突破方法数据处理、绘图方法的使用(微视频引领、学生操作尝试)教学难点及化解方法plot()绘制折线图及其参数设置(微视频引领、学生操作尝试)教学方法讲授法、演示法、操作法教学资源微视频、PPT教学过程教学环节(时长)教学内容教师活动学生活动设计意图创设情景5现有部分公司股票和上证指数数据。如教材中表6.1.9和6.1.10所示。要求统计上证指数和各股票的收益率,并绘制折线图。创设情景,引导学生思考怎样分组统计各股票的收益率?怎样计算上证指数收益率?怎样合并股票收益率和指数收益率?思考数据分组和合并方法。创建情景,调动学生学习的积极性;教师以问题引导学生主动思考,体现学生在课堂上的主体地位明确任务绘制股票收益率折线图展示任务明确任务任务驱动实施任务读入数据10importpandasaspdfrompylabimportpltplt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicode_minus']=Falsestocks=pd.read_excel(r"D:\pydata\项目六\股价.xlsx",index_col=[0])①index=pd.read_excel(r"D:\pydata\项目六\指数.xlsx",index_col=[0])②①读取股票数据表到变量stocks中,并将第一列“date”作为行索引。②读取指数表到变量index中,同样将第一列“date”作为行索引1.讲解模块导入,数据读入2.布置任务,让学生验证数据输入操作1.聆听教师的讲解2.自行操作读入数据并设置行索引实施任务处理股票收益率20groups=stocks.groupby('名称') ③names,dfs=[],[]forgingroups:names.append(g[0])dfs.append(g[1]['收益率'])④dfs=pd.concat(dfs,axis=1) ⑤dfs.columns=names ⑥③使用“名称”列对数据框stocks分组,得到groups分组对象。④解析分组对象;g[0]为组名,类型‘str’;g[1]为分组数据,类型为‘DataFrame’;g[1]['收益率']提取分组数据的“收益率”列,类型为‘Series’。通过for语句,将组名和收益率分别构成列表names和dfs。names的内容为['中芯国际','云南白药','海康威视','美的集团','贵州茅台'];dfs为‘Series’类型的列表,每一个‘Series’对象包含一只股票的全部收益率数据。⑤将dfs按“列”方向拼接为一个数据框对象。⑥将dfs的列索引设置为股票名称,date是行索引。1.讲解数据处理方法2.演示数据变化过程3.布置任务,让学生操作验证1.聆听教师的讲解2.自行操作掌握数据处理方法实施任务处理指数收益率20index['收益率']=index['close'].pct_change()⑦dfs['上证指数']=index.收益率⑧dfs.dropna(inplace=True)⑨dfs.iloc[0]=0dfs+=1dfs=dfs.cumprod()⑩⑦通过收盘值计算指数收益率,并保存为数据框index的“收益率”。⑧在数据框dfs中新建“上证指数”列,合并存储index的“收益率”,按照dfs的行索引合并,也就是时间相同的行合并。⑨去掉含有空值的行。⑩cumprod()方法计算累计收益率。cumprod()方法计算序列的累乘积,结果数据是一个与原序列长度相同的序列,结果序列的第一个值与原序列相同,结果序列的第二个值是原序列前两个值的乘积,结果序列的第三个值是原序列前三个值的乘积,其他值以此类推。通过累乘积得到的是股票或指数的累计复合收益率。1.讲解数据处理方法,pct_change()、cumprod()的使用2.演示数据变化过程3.布置任务,让学生使用数据处理方法1.聆听教师的讲解。2.完成任务,验证操作。掌握数据处理方法实施任务绘制折线图20dfs.plot(kind='line',figsize=(16,8),title='2020年7月至2021年7月股票收益率折线图',style=['m.-','r-.','c--','y-','b:','k-1'])⑪plt.show()⑪plot()方法绘图,默认使用行索引(时间)生成横坐标,横坐标标签为“date”;参数kind='line'表示绘制折线图,使用数据框的每一列绘制一条折线;style设置线条样式,线条样式由颜色、线型和标记组成,可以不设置,也可以设置任意一种、两种或三种。style是列表类型,符号意义见表6.1.5和6.1.6,第一个元素对应第一列数据曲线样式,第二个元素对应第二列数据曲线样式,依此类推。1.讲解plot()方法绘制折线图及其参数设置2.布置任务,让学生绘制不同样式、颜色、标记的折线图1.聆听教师的讲解2.绘制不同样式、颜色、标记折线图让学生在完成任务的过程中发现问题,并想办法解决问题分享评价展示学生作品组织学生评价操作过程学生展示分享提高回顾总结31.编程步骤2.数据处理方法3.使用plot()方法绘制折线引导学生回顾教学内容说出编程步骤和折线相关参数设置温故而知新拓展提升2要求使用教材中的表6.1.9中的数据(2_股价.xlsx),创建一个DataFrame对象。使用折线图展示“云南白药”的收盘价,其中云南白药为x轴标签,收盘价为y轴标签,x轴刻度标签是时间,如教材中的图6.1.8。布置拓展任务及强调任务要求完成数据处理和绘图操作引导学生自己尝试编写程序教学反思《pandas数据处理》教案课题在不同子图绘制各班成绩统计图课时1.5课型新课教学目标pandas绘制多个图表,直方图的绘制使用subplots和layout参数扩展知识,子图布局教学重点及突破方法数据处理绘制多个图标(微视频引领、学生操作尝试)教学难点及化解方法数据处理过程(微视频引领、学生操作尝试)教学方法讲授法、演示法、操作法教学资源微视频、PPT教学过程教学环节(时长)教学内容教师活动学生活动设计意图创设情景5基于任务一活动1中的学生成绩文件(1_计算机专业成绩.xlsx),如表6.1.1所示。统计各班的C语言成绩分布情况,并绘制直方图(hist)。创设情景,引导学生分析怎样将不同班级的学生成绩分开?怎样筛选出C语言成绩?怎样将筛选出的成绩构造为DataFrame对象?思考什么是直方图?利用已经学习的知识分析数据处理过程。创建情景,调动学生学习的积极性;教师以问题引导学生主动思考,体现学生在课堂上的主体地位明确任务在不同子图绘制各班成绩统计图展示任务明确任务任务驱动实施任务读入数据10importpandasaspdfrompylabimportpltplt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicode_minus']=Falsegrade=pd.read_excel(r"D:\pydata\项目六\计算机专业成绩.xlsx")①①读取数据,保存在变量grade中,该变量为数据框对象。1.讲解读入数据2.布置任务,让学生操作验证1.聆听教师的讲解2.自行操作掌握数据读入实施任务数据处理20groups=grade.groupby('班级')②names,dfs=[],[]forgingroups:names.append(g[0])dfs.append(g[1].loc[:,['C语言(70分)']])③res=pd.concat(dfs,axis=1)④res.columns=names⑤②按照“班级”对grade分组,得到分组对象groups。③解析分组;g[0]为组名;g[1]是数据框对象,包含分组数据;for语句执行后,names内容为['2019级计算机1班','2019级计算机2班','2019级计算机3班','2019级计算机4班'],dfs为‘Series’类型的列表,每个‘Series’对象包含一个班的C语言成绩。④将列表dfs拼接为数据框对象res,concat()沿“列”方向拼接,拼接方式为‘outer’,会出现很多空值,但是不影响成绩分布统计结果。axis=1表示操作结果保持行索引不变,对列操作;axis=0刚好相反。⑤设置res对象的列索引为names,res内容如表6.2.2,第1列为行索引。1.讲解数据处理方法2.演示数据变化过程3.布置任务,让学生操作验证1.聆听教师的讲解2.自行操作掌握数据处理方法实施任务绘制柱状图20res.plot(kind='hist',figsize=(16,9),title='C语言成绩分布图',subplots=True,layout=(2,2))⑥plt.show()⑥绘制一幅2行2列的图像,使用res的每一列绘制一个直方图。图中每个条形占有的横坐标范围表示当前成绩范围,条形的高度表示当前成绩范围内的学生人数。1.讲解subplots和layout参数2.布置任务,让学生使用subplots和layout绘制多图1.聆听教师的讲解。2.完成任务,绘制多图。让学生在完成任务的过程中发现问题,并想办法解决问题分享评价展示学生作品组织学生评价操作过程学生展示分享提高回顾总结31.编程步骤2.多图绘制方法引导学生回顾教学内容说出绘制多图的方法及子图布局温故而知新拓展提升2用本案例的数据(1_计算机专业成绩.xlsx),分班统计各专业课最低分和最高分。要求绘制1行2列的统计图,第一个子图绘制垂直柱状图表示各班最低分,第二个子图绘制水平柱状图表示各班最高分,如图6.2.3。布置拓展任务及强调任务要求完成数据处理和绘图操作引导学生自己尝试编写程序教学反思《pandas数据处理》教案课题按分数段绘制各班的人数占比课时1.5课型新课教学目标pandas绘制多个饼图扩展知识,嵌套图教学重点及突破方法数据处理过程,多个饼图的绘制(微视频引领、学生操作尝试)教学难点及化解方法数据处理过程(微视频引领、学生操作尝试)教学方法讲授法、演示法、操作法教学资源微视频、PPT教学过程教学环节(时长)教学内容教师活动学生活动设计意图创设情景5使用学生成绩数据(1_计算机专业成绩.xlsx),针对C语言成绩,统计各班学生在不及格学生、及格学生和优秀学生中所占的比例,并绘制饼图(pie)。创设情景,引导学生分析怎样按照成绩分段?怎样统计各分数段的学生人数?思考什么是饼图?利用已经学习的知识分析数据处理过程。创建情景,调动学生学习的积极性;教师以问题引导学生主动思考,体现学生在课堂上的主体地位明确任务按分数段绘制各班的人数占比展示任务明确任务任务驱动实施任务读入数据10importpandasaspdimportpylabaspltplt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicode_minus']=Falsegrade=pd.read_excel(r"D:\pydata\项目六\计算机专业成绩.xlsx")grade=grade.loc[:,['班级','C语言(70分)']]①①取出“班级”和“C语言(70分)”两列数据,如教材中表6.2.4所示。1.讲解读入数据,提取绘图数据,演示结果2.布置任务,让学生操作验证1.聆听教师的讲解2.自行操作掌握数据读入实施任务数据处理20grade['C语言(70分)']=pd.cut(grade['C语言(70分)'],bins=[-1,42,56,71],labels=['不及格','及格','优秀'])②res=pd.crosstab(index=grade['班级'],columns=grade['C语言(70分)'])③②cut()方法把一组数据分割成离散的区间。参数bins=[-1,42,56,71]和labels=['不及格','及格','优秀']表示
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 书上架工作制度范本
- 临泉玩具厂工作制度
- 中学校消毒工作制度
- 交通检疫点工作制度
- 专业委员会工作制度
- 办公室人员工作制度
- 劳动局管理工作制度
- 区健康教育工作制度
- 医保各岗位工作制度
- 医务部工作制度汇编
- GB/T 39693.5-2025硫化橡胶或热塑性橡胶硬度的测定第5部分:用便携式橡胶国际硬度计法测定压入硬度
- 显卡知识培训课件
- 出境人员保密知识培训课件
- 市政公用工程设计文件编制深度规定(2025年版)
- 2025年自考专业(行政管理)当代中国政治制度考试真题及答案
- 学堂在线 大数据机器学习 期末考试答案
- 压力性损伤护理风险评估
- 课题立项申报书范文护理
- 乌鲁木齐市既有建筑改造消防设计与审查指南
- 法治副校长培训课件
- 图书中的一封鸡汤信直接让我从咸鱼变超人!讲义-2025届高考英语复习之读后续写
评论
0/150
提交评论