《第2节 统计分析数据》参考课件_第1页
《第2节 统计分析数据》参考课件_第2页
《第2节 统计分析数据》参考课件_第3页
《第2节 统计分析数据》参考课件_第4页
《第2节 统计分析数据》参考课件_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

川教版(2019)八年级下册第三单元数据分析与处理第2节统计分析数据课堂导入同学们:上一节课我们学习了测试体重指数、肺活量、视力、50米跑、坐位体前屈、立定跳远、引体向上、仰卧起坐、长跑等项目,得到了很多的测试数据。怎么通过这些数据来判断我们是否健康呢?这就需要对这些数据进行统计分析。我们一起来看看吧!学习目标1.掌握Python中的基本算术运算符。2.了解什么是数组。3.掌握Python中列表类型的基本操作。4.掌握numpy模块中常用的数组操作。5.熟练使用numpy模块进行简单的数据统计与分析。目录一、Python算术运算符二、数组三、统计函数一、Python算术运算符Python算术运算符要学习利用Python进行数据处理,首先要学会在Python中进行计算。需要知道Python算术运算符。运算符描述实例+加1+2=3-减10-5=5*乘2*3=6/除10/20=0.5//取整除返回除法的商的整数部分,9//2=4%取余数返回除法的余数,9%2=1**幂又称次方、乘方,2**3=8Python算术运算符在Python中进行数学计算时,和数学中的运算符优先级一致,同样也是先乘除后加减,同级运算符从左至右计算,可以使用“()”调整计算的优先级。Python中的算术运算符优先级由高到低的顺序排列如下表:运算符描述**幂(最高优先级)*/%//乘、除、取余数、取整除+-加、减练习请写出下列算式在Python中的运算结果。3+2*6= 5*6**2= 3*(7+8)=16%3= 28//9= 35/7=18+77%9= 13*9//7= (88-19)/2+34=Python算术运算符Python算术运算符欢欢和他的同学们进行了学生体质健康测试,其中测试的身高、体重见下表。姓名性别身高/m体重/kg欢欢男1.6252乐乐女1.6045团团男1.6143圆圆女1.4632通过这些数据,可以计算每位同学的体重指数,体重指数(BMI)=体重(千克)/身高²(米²)。根据体重指数的计算结果和八年级学生体重指数等级表,可以判断出每位同学的体重等级是正常、低体重、超重还是肥胖。Python算术运算符程序代码如下图:运行结果如下图:Python算术运算符根据八年级学生体重指数等级表可以看出:欢欢、乐乐、团团的体重指数处于正常范围,而圆圆的体重指数只有15.012197410395949,属于低体重。所以圆圆还需要在健康饮食、平衡营养的基础上加强体育锻炼。等级正常低体重超重肥胖男生15.7~22.5≤15.622.6~25.2≥25.3女生15.3~22.2≤15.222.3~24.8≥24.9八年级学生体重指数等级表二、数组1.Python列表有序的可变的元素集合称为列表。在Python中,可以使用“=”运算符直接创建列表,列表用[]表示,数据之间使用逗号分隔。体重指数计算中的身高和体重数据就可以用这种方式生成,但要想对它们进行运算,就需要分别取出其中的某一个元素,再用之前学习的for循环语句来实现。因此,体重指数计算在Python中可以这样来做,程序代码如下图:这里的t[i]表示取t组数据中的第i个元素s[i]表示取s组数据中的第i个元素数组程序运行结果如下图:提示:当要计算更多同学的体重指数时,可以把程序中的range(4)改为range(len(t)),这里的len(t)表示数组t包含数据元素的个数。数组2.numpy数组运算在程序设计中,为了处理方便,把具有相同类型的若干数据按无序的形式组织起来,这些由若干元素构成的数据集合称为数组。数组的运算可以用numpy模块来实现。numpy是第三方程序模块,它是一个运行速度非常快的科学计算模块,在使用之前必须先进行安装。可以使用如下的命令安装numpy:pipinstallnumpynumpy模块的引入和七年级学过的turtle模块的引入方法一样。例如前面的体重指数计算,可以利用numpy模块创建数组来实现。数组程序代码如下图:生成数组最简单的方式就是使用array()函数,该函数可以将输入的一组数据转换为数组。输入的这组数据可以是多种形式,例如数字、字母、汉字等,数据间使用逗号分隔,一个数组中的数据必须是同一种类型。数组对一个数组使用数学运算,实际上就是对数组的每一个元素进行数学运算。例如:程序中的s**2,表示对s数组的每一个元素进行次方运算。对两个数组使用数学运算,实际上是对两个数组对应元素进行运算。例如:程序中的t/s**2,表示t数组中的每一个元素与s数组中对应的每个元素进行运算,程序运行结果如下图:数组对比三次计算体重指数的运行结果,可以发现,前两次是在Python环境中的运行结果,保留的小数位数多;第三次是在numpy模块中的运行结果,保留的小数位数少。两种运行环境对浮点数默认的精度不同,所以numpy模块保留的小数位数更少一些,这样可以节省内存,加快运算速度。数组数组拓展练习:同学们可以试试运行下面的代码,看看效果。zeros()函数,可以创建数组元素全部为0的数组ones()函数,可以创建数组元素全部为1的数组arange()函数,可以创建等差数组,该函数和之前学过的range()函数类似运行结果3.读写文本文件当数据量比较大时,将数据依次录入程序容易出错,且效率低。因此,用文件直接导入数据的方法更加准确、方便。numpy中可以直接导入文本文件。例如:下表是欢欢所在班级某一次分项目测试的成绩表。(1)建立基础数据表姓名性别体重评分肺活量50米跑立定跳远坐位体前屈800米跑1000米跑1分钟仰卧起坐引体向上附加分总分欢欢男1515208.57.2020092乐乐女15152077.21707.600团团男151214.86.66.8016040圆圆女1514.25177.610200802..女1510.21686.61908.500..女151215.2771606.800..女1515167.48190800..女151514.46.47.460900..男151520107.401707.20..女151514.446806.800..男1514.25198.57.4014.40100..男1515207.66.20200910..男151520109018060..女151515.27.67.21708.500..男91212.827.6012030数组数组首先将上表中的数据复制到记事本或写字板,保存为文本文件“分项目成绩表”,如下图,用来存储数据,数据可以用空格、逗号等分隔符分隔。数组(2)导入数据从文件导入可以用loadtxt()函数。它能从文本文件中读取数据,并以数组的形式返回。利用loadtxt()函数导入“分项目成绩表”文件来计算总分,程序代码如下图:提示:如果要对数组中的每一列进行求和可以用sum(0)来实现。sum(1)表示对数组中的每一行进行求和数组程序运行结果如下图:(3)导出数据这样的结果排列方式不便于查看每位同学的总分,可以利用savetxt()函数将数组以指定的格式保存成文本文件。例如:savetxt(“b.txt”,b,fmt='%.2f')表示将数组b以两位小数的形式保存到b.txt文件中。数组修改上面的程序,代码如下图:程序运行后得到的文本文件如右图:数组4.组合数组(1)水平组合数组上图中只有总分,没有基础数据,仍不方便查看和对比,所以需要将计算出的总分和前面的基础数据进行合并。将两个文件中的数组合在一起,利用hstack()函数可以实现。hstack()函数可将两个或者多个数组水平组合起来形成一个新的数组,程序代码如下图:hstack()函数可将两个或者多个数组水平组合起来形成一个新的数组数组运行结果如下图:从程序运行结果可以看出,数组a和数组b在水平方向首尾连接起来,形成了一个新的数组c,这就是数组的水平组合。数组(2)垂直组合数组如果需要将两个或多个数组垂直组合起来形成一个新的数组可以利用vstack()函数。程序代码如下图:利用vstack()函数将两个或多个数组垂直组合起来形成一个新的数组数组运行结果如下图:需要注意的是,所有参加水平组合的数组行数必须相同,所有参加垂直组合的数组列数必须相同,否则程序会报错。数组在计算总分的例题中,将基础数据和计算的总分合并成一个文件可以按下图修改程序。数组运行结果如下图:数组练习:1.编写程序,利用文件导入的方式来计算本班学生体质健康水平测试各项目总分。2.编写程序将计算的总分以文本文件的方式保存。3.编写程序将基础数据和总分文件合并,形成完整的总分文件。三、统计函数统计函数除了前面学习过的sum()函数,numpy模块还内置了很多统计函数,这些函数的使用方法可参考sum()函数,根据实际需要进行选择和使用。函数说明Sum()求和Mean()求平均值Max()取最大值Min()取最小值统计函数如果要计算“分项目测试成绩表”中各个项目的平均分,程序代码如下图:mean(0)表示对数组中的每一列求平均值统计函数代码运行结果如下图:统计函数下表是“国家学生体质健康标准”单项指标与权重(八年级)。我们将刚才计算的结果与这个标准进行对比,请同学们认真观察,看看能从中发现些什么呢?根据学生的回答,老师进行归纳总结:对于这些不够理想的指标,我们需要进行有针对性的锻炼。例如,长跑差说明耐力素质差,应强化耐力训练;引体向上差说明上肢力量差,应强化力量训练。争取取得进步,从而不断提高自身的体质健康水平。项目体重指数(BMl)肺活量50米跑立定跳远坐位体前屈800米跑(女)1000米跑(男)1分钟仰卧起坐(女)引体向上附加分权重/%15152010102020101020统计函数练习:1.编写程序计算本班学生健康水平测试各项目的平均分。2.建立本班学生立定跳远项目成绩表,编写程序找出本班立定跳远项目跳出的最远距离。当我们实现了数据分析和处理之后,就该考虑将我们处理好的数据生成统计图表,便于进行更直观的可视化分析,从而给我们提供一些更科学、更精准的建议。下节课我们将要学习如何绘制统计图,请同学们提前做好预

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论