资源简介 (共21张PPT)川教版(2019) 信息技术(八年级下册)第三单元 数据分析与处理3.2 统计分析数据(第3课时)一学习目标1、了解numpy模块中常用的数组操作2、了解loadtxt()、sum()、savetxt()、hstack()、vstack()函数的用法二新课讲解拓展练习请各小组课后运行这段代码,看看运行效果,下节课分享。二新课讲解教师讲解——numpy模块中函数的介绍from numpy import *a=zeros(3)print(a)1、zeros()函数:创建数组元素全部为0的数组[0. 0. 0.]引入numpy模块使用zeros(3)函数创建一个有3个0的数组,并赋值给数组a打印输出数组a二新课讲解教师讲解——numpy模块中函数的介绍from numpy import *a=ones(4)print(a)2、ones()函数:创建数组元素全部为1的数组[1. 1. 1. 1.]引入numpy模块使用ones(4)函数创建一个有4个1的数组,并赋值给数组a打印输出数组a二新课讲解教师讲解——numpy模块中函数的介绍from numpy import *a=arange(5)print(a)3、arange()函数:创建等差数组,该函数和和学习过的range()函数类似。[0 1 2 3 4]引入numpy模块使用arange(5)函数创建一个有5个元素的数组,数组的元素分别是:0,1,2,3,4,并赋值给数组a打印输出数组a二新课讲解教师讲解——读写文本文件→建立基础数据表当数据量比较大时,将数据依次录入程序容易出错,而且效率低。因此,用文件直接导入数据的方法更加准确和方便,numpy中可以直接导入文本文件。下面通过“欢欢班某一次分项目测试的成绩表”为例,展示所有的知识点。二新课讲解教师讲解——读写文本文件→建立基础数据表第一步:将Excel表中的数据复制到记事本或者写字板内,保存为文本文件”分项目成绩表“,存储数据,数据可以用空格、逗号等分隔符分隔。二新课讲解教师讲解——读写文本文件→导入数据第二步:loadtxt()函数可以从文本文件中读取数据,以数组的形式返回。 下面利用loadtxt()函数导入“分项目成绩表”文件,来计算总分。from numpy import *a=loadtxt('分项目成绩表.txt')b=a.sum(1)print(b)引入numpy模块读取文件数据sum(1)表示对数据中的每一行进行求和,如果要对数组中每一列进行求和可以用sum(0)实现。打印输出数组b二新课讲解教师讲解——读写文本文件→导入数据第二步:loadtxt()函数可以从文本文件中读取数据,以数组的形式返回。 下面利用loadtxt()函数导入“分项目成绩表”文件,来计算总分。from numpy import *a=loadtxt('分项目成绩表.txt')b=a.sum(1)print(b)[ 96.7 88.8 75.2 93.6 83.1 79. 88.4 73.2 91.6 69.2 88.3 102.8 93. 85.5 58.4]二新课讲解教师讲解——读写文本文件→导出数据第三步:第二步中导入数据后程序执行的结果的排列方式不便于查看每位同学的总分,可以使用savetxt()函数将数组以指定的格式保存为文本文件。from numpy import *a=loadtxt('分项目成绩表.txt')b=a.sum(1)savetxt('总分.txt',b,fmt='%.2f')引入numpy模块读取文件数据sum(1)表示对数据中的每一行进行求和,如果要对数组中每一列进行求和可以用sum(0)实现。将数组b以两位小数的形式保存在文件“总分.txt”文件中二新课讲解教师讲解——读写文本文件→导出数据第三步:第二步中导入数据后程序执行的结果的排列方式不便于查看每位同学的总分,可以使用savetxt()函数将数组以指定的格式保存为文本文件。from numpy import *a=loadtxt('分项目成绩表.txt')b=a.sum(1)savetxt('总分.txt',b,fmt='%.2f')二新课讲解教师讲解——组合数组→水平组合数组hstack()函数:只有总分,没有基础数据,仍旧不方便查看和对比,因此,需要将计算出的总分和前面的基础数据进行合并,将两个文件中的数组合并在一起,可以使用hstack()函数。hstack()函数可以将两个或者多个数组水平组合起来形成一个新的数组。from numpy import *a=array([[1,2,3],[4,5,6]])b=array([[7,8,9],[10,11,12]])c=hstack((a,b))print(c)引入numpy模块创建数组a创建数组b合并数组a和b二新课讲解教师讲解——组合数组→水平组合数组from numpy import *a=array([[1,2,3],[4,5,6]])b=array([[7,8,9],[10,11,12]])c=hstack((a,b))print(c)数组a数组b数组c[[ 1 2 3 7 8 9] [ 4 5 6 10 11 12]]二新课讲解教师讲解——组合数组→垂直组合数组vstack()函数:vstack()函数可以将两个或者多个数组垂直组合起来形成一个新的数组。from numpy import *a=array([[1,2,3],[4,5,6]])b=array([[7,8,9],[10,11,12]])c=vstack((a,b))print(c)引入numpy模块创建数组a创建数组b合并数组a和b二新课讲解教师讲解——组合数组→垂直组合数组from numpy import *a=array([[1,2,3],[4,5,6]])b=array([[7,8,9],[10,11,12]])c=vstack((a,b))print(c)数组a数组b数组c[[ 1 2 3][ 4 5 6][ 7 8 9][10 11 12]]二新课讲解任务一请编写程序,根据学习到的水平组合数组和垂直组合数组两种方式,请将基础数据表和总分表合并成一个文件。二新课讲解任务一请编写程序,根据学习到的水平组合数组和垂直组合数组两种方式,请将基础数据表和总分表合并成一个文件。二新课讲解任务一请编写程序,根据学习到的水平组合数组和垂直组合数组两种方式,请将基础数据表和总分表合并成一个文件。from numpy import *a=loadtxt('分项目成绩表.txt')b=a.sum(1)b.shape=(15,1)c=hstack((a,b))savetxt('总分1.txt',c,fmt='%.2f',delimiter='\t')引入numpy模块读取文件数据将数组中的每一行进行求和计算将数组b变成15行1列的数组水平组合数组数据间用制表符分隔二新课讲解课后练习请各小组编写程序实现以下结果:1、利用文件导入的方式来计算本班学生体质健康水平测试各项目总分。2、将计算的总分以文本文件的方式保存。3、将基础数据和总分文件合并,形成完整的总分文件。三课堂小结小结请各小组根据了解到的思维导图的使用方法,使用思维导图的方式总结本节课的知识。 展开更多...... 收起↑ 资源预览