4.2 大数据处理(教学设计)信息技术浙教版(2019)必修1

2025-11-25
| 31页
| 403人阅读
| 2人下载
精品

资源信息

学段 高中
学科 信息技术
教材版本 高中信息技术浙教版必修1 数据与计算
年级 高一
章节 4.2 大数据处理
类型 教案-教学设计
知识点 大数据分析和处理
使用场景 同步教学-新授课
学年 2025-2026
地区(省份) 浙江省
地区(市) -
地区(区县) -
文件格式 DOCX
文件大小 4.19 MB
发布时间 2025-11-25
更新时间 2025-11-25
作者 wuhao1987
品牌系列 上好课·上好课
审核时间 2025-11-25
下载链接 https://m.zxxk.com/soft/55114287.html
价格 4.00储值(1储值=1元)
来源 学科网

摘要:

该高中信息技术教学设计聚焦大数据处理核心知识,涵盖基本思想与架构、Python编程处理及数据可视化。通过播放“一天的数据”视频导入,衔接表格数据处理基础,对比大数据特点引出分治思想与分布式计算,构建知识脉络。 特色在于融合信息意识、计算思维与数字化创新,以任务驱动(如数据分类练习)和真实项目(百家姓统计)引导学生用Python处理文本数据、实现可视化,培养数据处理能力,资料案例丰富、结构清晰,助力教师高效教学。

内容正文:

4.2 大数据处理 共4课时(教学设计) 年级 高一年级 授课时间 课题 4.2 大数据处理 教学 目标 1.了解大数据处理的基本思想与架构; 2.能够编程处理数据,进行文本数据处理; 3.能够根据实际问题,选择恰当的方式把数据可视化,提升利用数字化工具解决实际问题的能力,进而提升信息技术学科素养; 教学 重难点 重点:掌握常用数据处理和统计分析工具的常见使用方法。 难点:能够根据实际问题,选择恰当的数据处理和统计分析工具整理数据,提升利用数字化工具解决实际问题的能力。 教学 准备 多媒体课件、多媒体教室 教学过程 教师活动 学生活动 新 课 导 入 一、课堂导入 1.通过播放一天的数据的视频来引入本节课的主题。 这就是我们普通人一天产生的数据。 同学们,这些都是大数据在生活中的应用,前面咱们也学习了如何处理表格数据。 大数据具有数据量大、数据来源与类型多样、处理速度快等特点,简单的表格处理软件已经无法满足大数据的处理需求,同时,大数据技术、理论和处理方法也在不断发展,为大数据的处理提供了越来越有力的支持。 通过播放一天的数据的视频和提问的方式导入教学,激发学习热情和探究欲望。 新 知 讲 授 一、大数据处理的基本思想与架构 处理大数据时,一般采用分治思想。分治,字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多个相同或相似的子问题,找到求这几个子问题的解法后,再找出合适的方法把它们组合成求整个问题的解法。如果这些子问题还难以解决,可以再把它们分成几个更小的子问题,以此类推,直至可以直接求出解为止。 任务1:通过计算感受大数据有多“大” 思考:根据信息存储全球领导厂商EMC公司的界定,规模至少在10TB左右的数据集合才能被称为大数据。若你的手机拍出的照片每张约5MB。你每天拍100张照片并保存下来,要存满10TB大约需要多少年?(提示:1TB=1024GB=1024*1024MB) 求解过程: 所需年数=数据总量/(每张照片的数据量*每天拍的照片数*365天) =10TB/(5MB*100*365) =10*1024*1024*1024MB /(5MB*100*365) ≈57.5(年) 思考:某公司搜集了过去一年发布的所有微博数据,需要统计其中出现频率最高的100个词。 求解过程:统计文件filename中各单词出现的频率,用Python编程实现的部分代码如下: wordcount = {} for word in open(filename,'r').read(): wordcount[word] += 1 数据量较小的情况下,程序的处理速度是非常快的。如果数据量、单词词汇量非常大(数十亿),那么运行这个程序、处理数据的速度将变得非常慢。 每台计算机处理数据后,将计算结果汇总到一台主控计算机上,由主控计算机根据中间计算结果汇总统计出最终计算结果,并输出出现频率最高的单词,这样就可以处理10G的词汇数据。 有10台计算机,每台计算机可以处理1000M数据。 但又有新的问题,100台计算机同时向主机传输数据可能会遇到主控计算机网络传输带宽的瓶颈。这时,可对网络结构进行改造,每10台分为一组分别汇总,最后提交给主控计算机完成最后的统计。 有100台计算机,按理应该可以处理100G词汇数据。 如果是1000台、1万台或者10万台计算机,这种处理模式就行不通了。 → 新的问题:1.多台计算机同时向主控计算机传输数据可能遇到主控计算机网络传输带宽的瓶颈, 2.随着计算机数量的增加,发生机器故障、网络故障的风险不断增加。即使只有一台计算机出现了问题,整个的计算都将是不成功的。 解决办法 这种“分治”的思想就是处理大数据的基本思路。 将同一份数据分发给不同的计算机,假设发给了3台计算机,当其中1份数据发生计算故障时,剩下的2份备份数据的计算结果还能相互验证,保证最终结果的正确性。这就需要一台或多台计算机负责管理,并运行专门的软件检测计算过程中的故障,在检测到故障时能重新安排计算任务。 分布式计算 概念:把一个需要非常巨大的计算能力才能解决的问题分成许多小部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。 案例:利用分布在世界各地成千上万台闲置计算机的计算能力,分析来自外太空的电信号,探索可能存在的外星智慧生命。 并行处理:并行处理(Parallel Processing)是计算机系统中能同时执行两个或更多处理的一种计算方法。并行处理的主要目的是节省大型和复杂问题的处理时间。 大数据处理 静态数据:批处理计算(Hadoop、Spark等) 流数据:流计算(Stomm、Heron等) 图数据:图计算(Pregel、GraphX等) 静态数据:在处理时已收集完成、在计算时不会发生改变的数据,一般采用批处理方式。 流数据:不间断地、持续地到达的实时数据,随着时间的流逝,流数据的价值也随之降低,通过实时分析计算可以得到更有价值的分析结果。 图数据:现实世界中的许多数据,如社交网络、道路交通等数据,可采用图计算模式进行处理。 → 数据分类 ①新冠病毒传播路径 ②手机中保存的照片 ③用户实时浏览记录 ④2022年各大高校录取情况 ⑤直播间实时观看人数 ⑥社交网络数据 静态数据:②④ 流数据:③⑤ 图数据:①⑥ 1.批处理计算 Hadoop是一个可运行于大规模计算机集群上的分布式系统基础架构,适用于静态数据的批处理计算。 借助Hadoop:程序员可以在不了解分布式底层细节的情况下,轻松编写分布式并行程序,将其在计算机集群上运行,完成海量数据的存储与分析。 类似软件:Spark是一种与Hadoop相似的、应用较广的开源分布式计算架构。Spark启用了内存存储中间结果,运行速度比Hadoop快很多。 Hadoop计算平台主要包括Common公共库、分布式文件系统HDFS、分布式数据库HBase、分布式并行计算模型MapReduce等多个模块。 Hadoop的组成 (1)分布式文件系统HDFS ①文件系统 Windows的文件系统采用FAT32或NTFS,Linux的文件系统为Ext2/Ext3/Ext4,这些文件系统均不能满足分布式文件的管理需求。Hadoop分布式文件系统(Hadoop DistributedFile System,简称HDFS)是谷歌文件系统(Google File System,简称GFS)的开源实现。 ②主要功能 它的主要功能是将大规模海量数据以文件的形式、用多个副本保存在不同的存储节点中,并用分布式系统进行管理。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。 (2)分布式数据库HBase HBase是一个高可靠、高性能、可伸缩、分布式的列式数据库,是谷歌BigTable数据库的开源实现。 与传统关系型数据库采用基于行的存储形式、用于管理表格类的结构化数据不同,HBase建立在HDFS提供的底层存储基础上,采用基于列的存储方式,主要用来存储非结构化数据和半结构化数据,具有良好的横向扩展能力,可管理PB级的大数据。 (3)分布式并行计算模型MapReduce MapReduce是一种分布式并行编程模型,能够处理大规模数据集的并行运算,主要由Map(映射)和Reduce(归纳) 2个函数构成。HDFS提供了分布式计算时每个节点服务器对数据的访问,HDFS 与MapReduce 的结合,使得在处理大数据的过程中计算性能、数据容错性得到了保障。 当 数 据 量 很 大 时, 一 台 服 务 器的 处 理 能 力 无 法 满 足 需 求, 这 时,MapReduce分布式并行计算的优势就体现出来了,它的核心处理思想是将任务分解并分发到多个节点上进行处理,最后汇总输出。 如右图所示,大数据集拆分为多个分片数据后分发到多个服务器中,Map函数把处理要求映射为多个map任务在节点服务器进行计算处理,节点任务处理完成后由Reduce函数归纳计算结果并输出。 MapReduce的工作流程 Hadoop最早起源于Nutch项目。Nutch是一个开源的网络搜索引擎,由Doug Cutting于2002年创建。随着网页数量的增加,项目组遇到了数十亿网页的存储和索引问题。 2003年底,谷歌发表了关于谷歌分布式文件系统的论文。该论文描述了谷歌搜索引擎网页相关数据的存储架构,该架构可解决Nutch 遇到的网页抓取和索引过程中产生的超大文件存储需求问题。由于谷歌仅开源了思想而未开源代码,Nutch项目组便根据论文开源实现了Nutch 的分布式文件系统(NDFS)。 2004年,谷歌发表了关于谷歌分布式计算框架MapReduce的论文,该框架可用于处理海量网页的索引问题。Nutch的开发人员依据论文完成了MapReduce的开源实现。 2006年初,NDFS和MapReduce从Nutch项目分离,Doug Cutting用儿子的棕黄色大象玩具的名字为项目起名为Hadoop。同年2月,Apache Hadoop项目正式启动以支持MapReduce和HDFS 的独立发展。 2008 年1月,Hadoop 成为Apache顶级项目,迎来了它的快速发展期。 2.流计算 Hadoop的设计初衷是面向大规模的批量处理,适用于处理静态数据,在流数据实时处理时明显性能不足,比如大型购物网站的广告推荐、社交网络的个性化推荐、根据交通路况实时更新导航线路等应用场景。随着数据处理量及实时性要求的提高,诞生了专门处理流数据的计算平台,如下图所示。 通过流计算系统,可以简单、高效、可靠地实现实时数据的获取、传输和存储,在与数据库、Hadoop、编程语言等整合后可开发出功能强大的实时计算与分析应用。典型的应用如Twitter的社交网络数据处理,采用了如下图所示的分层数据处理架构,每天可实时处理数十亿事件的数据。 Twitter的分层数据处理架构 处理流数据的软件系统主要有IBM InfoSphere Streams、Twitter Storm、Yahoo! S4、银河流数据处理平台(淘宝)、Facebook Puma等。Storm和S4是目前较为流行的开源分布式实时计算系统。Heron是Storm的替代产品,其外部接口和Storm保持兼容,在流数据处理性能方面与Storm相比有了大幅提升。 3.图计算 现实世界中的很多数据是以图的形式呈现的,或者是可以转换为图以后再进行分析的,如社交网络、网络浏览与购买行为、传染病的传播路径等。大规模的图往往有数十亿的节点和数千亿的边(节点之间关系的连线),节点之间的关系错综复杂,如下图所示的蛋白质激素构成图。传统的Hadoop架构在处理大型图计算的问题时性能上明显不足,专业的图计算软件应运而生。目前通用的图处理软件主要包括两类:一类是图数据库,如Neo4j、InfiniteGraph、OrientDB等;另一类是并行图处理系统,如Google Pregel、Apache Giraph、卡内基梅隆大学的GraphLab、运行于Spark平台的GraphX等。 蛋白质激素构成图(由2.7万个节点和794万条边组成) 4.实时处理与批处理的整合 2014年9月,Twitter开源了其大数据处理系统Summingbird,该系统实现了批处理和流计算在一个平台架构下的整合(Hadoop+Storm)。开发者在同一个平台既可以做批处理,也可以做流计算,还可以进行两种模式的混合使用。平台的整合缩短了批处理与流处理之间的切换延时时间,有利于减少系统的开销,降低使用成本。 二、编程处理数据 使用计算机语言编程,可以更加灵活、深入地进行数据分析和挖掘。选用Python语言编程进行数据处理,可以调用Python的扩展模块,常用的扩展模块有numpy、scipy、pandas和matplotlib等。 numpy模块是Python中做科学计算的基础库,主要提供科学计算中常用的随机数、数组运算等基础函数。 scipy模块是基于numpy构建的一个模块,增强了在高等数学、信号处理、图像处理、统计等方面的处理能力。 pandas模块基于numpy实现,主要用于数据的处理和分析。它提供了大量处理数据的函数和方法,能方便地操作大型数据集。 以pandas为例,介绍使用计算机程序设计语言编程进行数据处理的方法。 1.利用pandas模块处理数据 pandas提供了Series和DataFrame两种数据结构。使用这两种数据结构,可完成数据的整理、计算、统计、分析及简单可视化。 在Python中引入pandas模块的方法如下: import pandas as pd 导入模块,别名为“pd” (1)Series Series是一种一维的数据结构,包含一个数组的数据和一个与数据关联的索引(index),索引值默认是从0起递增的整数。列表、字典等可以用来创建 Series 数据结构,与列表不同的是,Series的索引可以指定,类型可以为字符串型。 例1 创建1个Series 结构类型的对象s1,存储3名同学的身高值。 s1=pd.Series([166,178,180]) print(s1) 运行结果: 0 166 1 178 2 80 dtype: int64 #创建Series对象时指定索引 s2=pd.Series([166,178,180],index=["s01","s02","s03"]) print(s2) 运行结果: s01 166 s02 178 s03 180 dtype: int64 通过索引可以选取Series对象中的值,通过赋值语句可以修改Series对象中的值。如:s1[0]=168、s2["s01"]=168,可将s1、s2对象中的“166”改为“168”。 属性 说明 index Series的下标索引,其值默认是从0起递增的整数 values 存放Series值的一个数组 Series对象常用属性 案例二:查看案例1中s1对象的index、values属性值。 for i in s1.index: print(i) 运行结果: 0 1 2 for i in s1.values: print(i) 运行结果: 166 178 180 for i in s1: print(i) 运行结果: 166 178 180 (2)DataFrame DataFrame 是一种二维的数据结构,由1个索引列(index)和若干个数据列组成,每个数据列可以是不同的类型。DataFrame可以看作是共享同一个index的Series的集合。创建DataFrame对象的方法很多,通常用一个相等长度的列表或字典来创建。 案例三:使用相等长度列表的字典构建一个DataFrame对象df1,存储3名同学的姓名、性别、图书借阅次数数据。 import pandas as pd data={"姓名":["王静怡","张佳妮","李臣武"],"性别":["女","女","男"], "借阅次数":[28,56,37]} df1=pd.DataFrame(data,columns=["姓名","性别","借阅次数"]) print(df1) 姓名 性别 借阅次数 0 王静怡 女 28 1 张佳妮 女 56 2 李臣武 男 37 运行结果 可以直接读取二维数据文件创建DataFrame对象。如使用read_excel()函数,读取Excel文件创建DataFrame对象,也可以使用to_excel()函数,创建Excel文件保存数据。 案例四:读取Excel文件“test.xlsx”中的数据,创建DataFrame对象df。 import pandas as pd df=pd.read_excel("test.xlsx") print(df) 地区 规格 单位 价格 采价点 采集时间 0 北京市 红富士一级 元/500克 2.98 超市2 11月中旬 1 北京市 红富士一级 元/500克 4.88 超市1 11月中旬 2 天津市 红富士一级 元/500克 5.00 超市1 11月中旬 3 天津市 红富士一级 元/500克 5.00 超市2 11月中旬 4 石家庄市 红富士一级 元/500克 3.98 超市1 11月中旬 5 石家庄市 红富士一级 元/500克 3.98 超市2 11月中旬 DataFrame对象常用属性如下表示。DataFrame中的索引、列标题及值可以通过属性来显示。 DataFrame对象常用属性 案例五:查看df1对象的索引、列标题、值,并将行、列转置。 和Series对象一样,DataFrame对象中的一列可以通过字典记法或属性来检索,列可以通过赋值来修改。 案例六:分别检索df1对象中“姓名”“借阅次数”列数据,并修改“借阅次数”列数据。 可以通过布尔型数据选取满足条件的行。如通过df1[df1["借阅次数"]>30],可以检索df1 对象中“借阅次数”大于30 的数据行。使用at[]方法可以根据行标签和列标签选取单个值,如通过df1.at[0,"姓名"],可以选取df1对象中第1行、“姓名”列的值。 DataFrame数据结构提供了丰富的函数,这些函数可以用来进行行、列编辑和统计计算等。DataFrame常用函数如下表所示。 DataFrame常用函数 ① DataFrame对象中行、列的编辑。DataFrame中,新增列、删除列、重命名列可以通过insert()、drop()、rename()等函数完成;追加数据行可以通过append()函数完成;使用set_value()函数可以根据行标签和列标签设置单个值。 案例七:对df对象中的数据进行以下编辑:在最后追加一行数据;删除“规格”列数据;删除第1行数据。 #添加1行数据 df_add=df.append({"地区":"石家庄市","规格":"红富士 一级","单位":"元/500克","价格":4.00, "采价点":"集市3","采集时间":"11月中旬"},ignore_index=True) df_delc=df.drop("规格",axis=1) #删除"规格"列数据 df_delr=df.drop(0) #删除第1行数据 说明:append()、drop()函数均不改变原有df对象中的数据,而是通过返回另一个DataFrame对象来存放改变后的数据。如本例中df_del=df.drop("规格",axis=1) 不改变df对象中的数据,删除后的数据存放在df_del对象中,del df["规格"] 会永久删除df 对象中"规格"列数据。 ②DataFrame对象中数据的统计与计算 使用groupby()函数,可以对DataFrame对象各列或各行中的数据进行分组, 然后对其中每一组数据进行不同的操作。 案例八:将df对象中的数据按“地区”分组,并计算分组后各组数据的平均值。 g=df.groupby("地区",as_index=False) print(g.mean()) #计算每组价格数据的平均值 #分组、求平均的代码,也可以写作:g=df.groupby("地区",as_index=False).mean() 运行结果: 地区 价格  0 北京市 3.93 1 天津市 5.00 2 石家庄市 3.98 ③ DataFrame对象中数据的排序。DataFrame对象中,按索引排序可以使用sort_index()函数,按值排序可以使用sort_values ()函数。通过选项axis=0/1 确定排序的轴向,axis默认值为0,纵向排序;通过选项ascending=True/False确定升/降序,ascending默认值为True,升序排序。排序结果返回一个新DataFrame对象。 案例九:对df对象中的数据,按“价格”值降序排序。 df_sort=df.sort_values("价格",ascending=False) #按价格值降序排序 print(df_sort) 地区 规格 单位 价格 采价点 采集时间 2 天津市 红富士一级 元/500克 5.00 超市1 11月中旬 3 天津市 红富士一级 元/500克 5.00 超市2 11月中旬 1 北京市 红富士一级 元/500克 4.88 超市1 11月中旬 4 石家庄市 红富士一级 元/500克 3.98 超市1 11月中旬 5 石家庄市 红富士一级 元/500克 3.98 超市2 11月中旬 0 北京市 红富士一级 元/500克 2.98 超市2 11月中旬 2.利用 matplotlib 模块绘图 atplotlib是一个绘图库,使用其中的pyplot子库所提供的函数可以快速绘图和设置图表的坐标轴、坐标轴刻度、图例等。 常用绘图函数 在Python中引入matplotlib的pyplot子库的方法为: import matplotlib.pyplot as plt 案例九:绘制正弦曲线图 import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 10, 1000) y1 = np.sin(x) y2 = np.sin(x**2) plt.figure(figsize=(8,4)) #创建图表对象 plt.title("sin(x) and sin(x**2)") #设置图表标题文字 plt.plot(x,y1,label="sin(x)",color="r",linewidth=2) #绘制线形图 plt.scatter(x,y2,label="sin(x**2)") #绘制散点图 plt.ylim(-1.5,1.5) #设置y坐标轴的取值范围 plt.xlim(0,10) #设置x坐标轴的取值范围 plt.legend() #显示图例 plt.show() 运行程序,上述代码中figsize参数指定figure对象的宽度和高度;color指定线条的颜色;linewidth指定线条的宽度;label给线条指定一个标签名称,该标签显示在图例中,绘制的图表如下图所示。 正弦图 3. 利用 Python分析数据实践 以“身边的百家姓”项目为例,学习和体会编程处理数据的方法和优势。 案例分析:身边的百家姓 通过统计某地的姓名数据,分析当地姓氏的构成情况。 分析数据 如下图所示,姓名数据 以CSV文件格式组织和存储,以UTF-8格式编码。xm.csv文件大小为26.7MB,共有2594178条姓名数据,内容包含姓氏和名字。本次数据处理的目的是统计全部数据中不同姓氏的人数,并通过排序和图表进一步分析。 姓名数据 (2)编制程序 使用Python编程统计、分析当地居民姓氏的构成情况,程序如下: (3)查看结果 运行上述Python程序,结果如下图所示。观察图表,发现在2594178条姓名数据中,人数前五的姓氏依次为:王、李、张、刘、陈;王姓的人数最多,有102400人。 姓氏统计结果 三、文本数据处理 文本数据处理是大数据处理的重要分支之一,目的是从大规模的文本数据中提取出符合需要的、感兴趣的和隐藏的信息。目前,文本数据处理主要应用在搜索引擎、情报分析、自动摘要、自动校对、论文查重、文本分类、垃圾邮件过滤、机器翻译、自动应答等方面。 1. 文本数据处理的一般过程 文本内容是非结构化的数据,要从大量的文本中提取出有用的信息,需要将文本从无结构的原始状态转化为结构化的、便于计算机处理的数据。典型的文本处理过程主要包括分词、特征提取、数据分析、结果呈现等,如下图所示。 典型的文本处理过程 (1)中文分词 中文分词是中文文本信息处理的基础,机器翻译、全文检索等涉及中文的相关应用中都离不开中文分词。分词是将连续的字序列按照一定的规范重新组合成词序列的过程,也就是将一个汉字序列切分成一个一个单独的词。因为英文词语与词语之间有明显的空格,分词不涉及复杂的关键词提取方法,而中文词与词之间是紧密相连的,分词方法相当复杂,目前的分词算法还不能实现完全准确的分词。常用的中文分词算法可分为如下三类: ①基于词典的分词方法,也称作基于字符匹配的分词方法,即在分析句子时与词典中的词语进行对比,词典中出现的就划分为词。如下图4所示的是Python中文分词模块jieba中词典(dict.txt)的截图。 jieba分词模块中的词典 ②基于统计的分词方法,统计分词的思想是依据上下文中相邻字出现的频率统计,同时出现的次数越高就越可能组成一个词。在实际应用中,一般是将其与基于词典的分词方法结合使用。 ③基于规则的分词方法,通过让计算机模拟人的理解方式,根据大量的现有资料和规则进行学习,达到对文字进行分词的效果。由于中文语言知识的笼统性、复杂性,这种分词方法目前还处于试验阶段。 常见的分词系统 (2)特征提取 在中文文本分析中可以采用字、词或短语作为表示文本的特征项。相比较而言,词的切分难度比短语的切分难度小且更能表达文本的含义。目前,大多数中文文本分析中都采用词作为特征项,这种词称作特征词。 通常可直接用分词算法和词频统计得出的结果作为特征词,但对于稍大一些的文本,提取出的特征词数量将非常大,其计算处理过程的效率非常低,计算结果的准确性也很难令人满意。因此,必须找出最具代表性、最有效的文本特征,通常的办法是通过特征提取来减少特征词的数量,提高文本处理的速度和效率。 特征提取一般采用的方式为根据专家的知识挑选有价值的特征,或者用数学建模的方法构造评估函数自动选取特征等。目前大多采用评估函数进行特征提取的方式,评估函数大多是基于概率统计设计的,这就需要用庞大的训练数据集才能获得对分类起关键作用的特征。随着深度学习、大数据分析等技术的发展,文本特征提取将更加准确、科学。 2. 文本数据分析与应用 在取得特征词后,对文本的分析就需要根据项目的需求,确定解决问题的路径,选取合适的工具、设计算法抽取出文本中隐含的价值。下面以标签云、文本情感分析等为例感受文本数据的处理。 (1)标签云 标签云用词频表现文本特征,将关键词按照一定的顺序和规律排列,如频度递减、字母顺序等,并以文字大小的形式代表词语的重要性,如下图所示。标签云广泛应用于报纸、杂志等传统媒体和互联网。 标签云 标签云是文本可视化的一种方式。文本可视化将文本中复杂的或者难以通过文字表达的内容和规律以视觉符号的形式表达出来,使人们能够利用视觉感知能力快速获取文本数据中所蕴含的关键信息,为更好地理解文本和发现知识提供了新的有效途径。 (2)文本情感分析 文本情感分析是指通过计算机技术对文本的主观性、观点、情绪、极性进行挖掘和分析,对文本的情感倾向做出分类判断。文本情感分析作为一个多学科交叉的研究领域,涉及自然语言处理、信息检索、机器学习、人工智能等领域。 文本情感分析根据分析的粒度不同,分为词语级、语句级、整篇文章级三类。词语级是在分词的基础上,根据情感词典进行特征提取与分类,再分别给特征词赋予权重进行统计分析。特征词的权重,例如,满意+5 ;差–5等。 文本情感分析主要应用于网络舆情监控、用户评论分析与决策、信息预测等众多领域。 “北京城市数据映像”项目通过采集北京地区的微博数据进行了情感分析的研究,用不同的颜色表示心情,在区域地图上展示了不同地域人们在不同时间点情绪的变化。 城市心情 四、数据可视化 数据可视化是将数据以图形图像等形式表示,直接呈现数据中蕴含信息的处理过程。 杭州亚运会将于9月23日开幕,为了当好亚运主人翁,暑假期间,学校的亚运调研小分队通过查阅资料、走访调查完成了一份名为《数说亚运》的调研报告。 Q:这一份报告里有很多_______,但却没有________! 1. 可视化的作用 (1)快捷观察与追踪数据 作用:利用可视化技术,可以将处于不断变化中的数据生成实时变化的可视化图表,帮助人们快捷地发现各种数据的动态变化过程。 案例:百度地图提供的实时路况服务,可以实时查询各大城市的路况信息;中国天气网提供的临近预报服务,可以实时查询全国各地降水、气温、风力等天气实况。 (2)实时分析数据 作用:利用可视化技术,可以实时将数据转换为图像呈现给用户,帮助用户分析数据的内涵和特征。同时,用户还可以根据自己的实际需求,通过改变可视化系统的设置,交互式地从不同角度对数据进行解读和分析。 案例:利用百度指数分析全国某段时间搜索关键词“数据可视化”的情况,通过交互,用户可以选择从趋势研究、需求图谱、舆情洞察、人群画像等多个角度进行分析。 (3)增强数据的解释力与吸引力 作用:利用数据图表,直观、动态地呈现新闻、研究报告等内容,可以帮助人们在短时间内了解内容、理解数据背后的含义,同时增强数据的吸引力,提高人们的阅读兴趣。已经有越来越多的新闻、研究报告等使用可视化的方式进行播报和发布。 案例:国家统计局分析大陆总人口情况 2. 可视化的基本方法 (1)有关时间趋势的可视化 不同的数据类型决定了可视化的表现形式。万事万物都随着时间的推移而变化,如天气在变化、人口在迁移、经济在发展……人们通过时间序列数据来观察这些事物变化的过程和趋势,如某个变化量是上升还是下降,是否存在周期性变化等。展现这类时间数据可采用柱形图、折线图等。 (2)有关比例的可视化 面对一系列总和为1的比例数据,人们常常关心各部分的大小及其占总体比例的情况,如衣服面料中各组成成分的比例,投票结果中赞成、反对、弃权的情况等。展现这类比例关系的数据可以采用饼图、环形图(也称面包圈图)等。 (3)有关关系的可视化 实际生活中,人们常遇到这样的问题:当某个对象的数量增加时,另一个数量是否会变化? 如全民的平均身高增高了,平均体重也会随之增长,这是一种简单的、成正比的关联。 关联性意味着当一件事情变化时,另一件事情也可能会发生某种变化。关联性可以帮助人们根据某一已知指标来预测另一指标。要想探究这种数据的分布关系,可以使用散点图、气泡图等。 散点图用于表现2~3个变量之间的关系,以圆点的多少或疏密展示成对的数和它们所代表的趋势之间的关系。如果两个指标是正相关的,在从左往右读图表时,点的位置会越来越高。相反,如果是负相关,从左往右点的位置会越来越低。有时会通过增加颜色维度来表示第三个变量。 如下图所示,某快递公司用户满意度与收货天数关系图的两个维度分别为用户满意度和收货天数。 用户满意度和收货天数关系图 气泡图一次比较3~4个变量,x轴和y轴各表示一个变量,第三个变量通过气泡的面积大小来表示,第四个变量通过气泡的颜色来体现。 卡特里娜飓风路径气泡图的四个维度分别为经度、纬度、强度和风力等级,点的面积代表强度,点的颜色表示风力等级。 卡特里娜飓风路径图 (4)有关差异的可视化 当数据中包含多种变量,要将所有对象进行分组,然后分析每一个变量及所有变量之间的差异,找出其中的异常值。 案例:如两个篮球运动员的场均得分可能是天壤之别,但他们的场均篮板、抢断和盖帽却可能非常接近。 要探寻包含多种变量的对象与同类之间的差异和联系,可以采用雷达图。 雷达图有多条轴,每一条轴代表一个变量,从正中心开始,等距平分圆周摆放,每相邻两个变量的终点之间有一条连接线。正中心表示各个变量的最小值,而轴末端的终点代表最大值。 雷达图反映数据相对中心点和其他数据点的变化情况,如下图所 示。 NBA球队赛季成绩雷达图 (5)有关空间关系的可视化 在人们的日常活动中,常常会关心“我们在哪里”“我们周边有什么”“我们如何到达目的地”等问题,这些信息都与地理位置有关。随着传感器、移动终端等设备的普及,带有经度、纬度标签的空间数据成为大数据中的重要数据类型。地理数据或者基于地理数据的分析结果可以运用不同颜色或图表直接表现在地图上进行展示。 3. 可视化的工具 据可视化工具软件很多,常见的数据分析软件中一般包含创建可视化图表功能。 主要用于数据可视化的工具有大数据魔镜、Gephi、Tableau等,也可以使用Python、R等计算机语言编写程序实现数据的可视化。此外,还有一些优秀的可视化工具库,如基于JavaScript的D3.js、Highcharts、Google Charts等,基于Python的matplotlib等。 Tableau主要用于实时可视化分析。它可以连接本地或云端数据,包括文件、SQL 数据库、Web 数据,生成柱形图、饼图、基本地图等多种图形。还可以连接动态数据源,将各种图形混合搭配形成定制视图,或者通过仪表盘视图实时关注数据状态。 D3.js是运行在JavaScript上的数据可视化开源工具库。它使用数据驱动的方式,结合强大的可视化组件,可以创建实时交互的网页。 Highcharts是一个用纯JavaScript编写的、基于HTML5技术的开源图表库,支持移动端,能够简单便捷地在Web网站或是Web应用程序中添加动态、交互性的图表。 Highcharts 的图表类型丰富,其中很多图表可以集成在同一个图形中形成混合图。它可以免费用于个人学习、个人网站和非商业用途。 Google Charts是为浏览器与移动设备定制的交互式图表开发包,用于在Web上可视化数据。Google Charts功能强大,容易使用,提供了从饼图、时间序列到多维交互矩阵等大量的可视化类型,生成的交互式图表既可以实时输入数据,也可以使用仪表板进行控制。 4. 可视化的典型案例 (1)风、气象、海洋状况的全球地图 “风、气象、海洋状况的全球地图”是一个对全球天气进行可视化的网站。该网站将全球的海洋流动、天气变化和风向、风速等的动态数据,在地图上进行可视化展示。 在这个交互的动画地图上,可以查看现在地球表面的风速流动方向、气象和海洋状况等信息。鼠标拖曳可以移动、改变观察位置。风速越强,地图上线条流动就越快;温度升高,地图颜色就会转为暖色系。有台风出现时,还能清楚地看到台风的结构状况,如圆形的台风眼等。 风、气象、海洋状况的全球地图 (2)编程语言之间的影响力关系图 下图显示编程语言之间的影响力关系,它是德国软件工程师Ramio Gómez制作的交互式关系网图。该图的数据来自 Freebase网站维护的编程语言表,其中包含3900多万个主题、2011 种类型和3万多个属性。图中的每个节点代表一种编程语言,点与点之间的连线表示语言之间有影响关系。影响关系多的语言,其节点在关系网中也越大,如Lisp、C、Smalltalk、Java等。单击各节点,可以查看受其影响的其他语言。如单击Python语言的节点,可以查看受Python影响的其他语言。 编程语言之间的影响力关系图 (3)“双十一”全网销售直播图 下图所示为(星图数据)2016年“双十一”网购狂欢节电商全网销售实时直播图。直播过程中,对海量的实时销售数据,采用了可视化方式进行展现。观察图中信息,可以发现各平台占比采用条形图呈现,贸易往来关系采用地图展现,交易过程中产生的包裹数量采用折线图呈现,各平台海外销售额占比采用柱形图呈现,此外还采用了环形图及其他个性化展现方式。 “双十一”全网销售直播图 (4)航班飞行实时跟踪地图 下图是一家航班跟踪数据公司(Flight Aware)基于全球数以千计的实时数据源提供的航班跟踪地图。在地图上实时显示当前区域中的航班飞行状态,单击某航班,可以查看其已飞航线、航路计划、飞行时间、准点情况、机型、周围航班等信息。 航班飞行实时跟踪地图 (5)微博热词趋势图 微指数是新浪微博提供量微博数据、用户行为数据的整理与挖掘,呈现热词整体趋势、实时变化、地域解读、人群属性分析等结果,反映微博舆情。其中的热词指数通过统计关键词的每日微博热议度,分析其在微博平台中的长期热议趋势,并采用折线图进行展现。 下图所示,对比“粽子”“龙舟”两个关键词在端午节前后1个月的微博热议趋势发现,“粽子”“龙舟”均在端午节当天热议指数达到顶峰,但是“粽子”的提及度要远高于“龙舟”,说明“粽子” 在端午节比“龙舟”更受人们的关注。 热词趋势分析的折线图反映出搜索词近期的热度。实时趋势分析可以实时地展现这个词此时此刻最新的微博搜索数据,结果同样展现为折线图。地域解读部分,将不同地域的关键词搜索热度,在地图上通过地域的颜色深浅来展现。属性分析部分,主要是对用户群体的性别、年龄、标签、星座进行分析,并采用柱形图、雷达图等展现。 五、小结 六、课堂小练 将分治思想分解开来讲解,让学生能更好的掌握知识点。 通过设置任务来驱动学生的学习热情,每完成一个任务就能提升同学们的学习内驱力。 结合实际情况的课堂小思考让同学们沉浸在学习的激情中。 以电脑数量的变化来一步步驱动同学们看待问题的思想,从而产生新的问题,再引出课题内容,这样同学们能更好的掌握知识点。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 将本节所学习的知识点用于解决刚刚产生的问题,让同学们做到学以致用。 将概念和案例同步展示,同学们能更好的掌握分布式计算这一知识点。 将大数据处理 的案例同步展示,让同学们有一个初步的印象,以便在后面的学习中讲解。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 让同学们将刚才所讲的知识点用于课堂练习数据分类,让同学们乘热打铁,及时掌握知识点。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 通过关键字段的展示来分步讲解分布式文件系统HDFS,让同学们能更好的掌握知识点。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 以时间线为引线来逐步讲解Hadoop的发展历史,让同学们能更好的掌握知识点。 通过关键字段的展示来分步讲解流计算,让同学们能更好的掌握知识点。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 通过关键字段的展示来分步讲解编程处理数据,让同学们能更好的掌握知识点。 同步讲解常用的扩展模块有numpy、scipy、pandas和matplotlib等,让同学们在对比中学习新知。 通过关键字段的逐步引入来讲解利用pandas模块处理数据,让同学们能更好的掌握知识点。 通过案例与知识点的结合讲解,让同学们能更好的掌握知识点。 以表格的形式直观的展示Series对象常用属性,让同学们直观观察其结果。 通过案例与知识点的结合讲解,让同学们能更好的掌握知识点。 通过案例与知识点的结合讲解,让同学们能更好的掌握知识点。 通过案例与知识点的结合讲解,让同学们能更好的掌握知识点。 以表格的方式展示DataFrame对象常用属性 ,让同学们直观的了解。 通过案例与知识点的结合讲解,让同学们能更好的掌握知识点。 以表格的方式展示DataFrame常用函数,让同学们直观的了解。 通过案例与知识点的结合讲解,让同学们能更好的掌握知识点。 通过案例与知识点的结合讲解,让同学们能更好的掌握知识点。 通过案例与知识点的结合讲解,让同学们能更好的掌握知识点。 以表格的方式展示常用绘图函数,让同学们直观的了解。 展示程序代码及其解释,让同学们直观的观察。 通过案例与知识点的结合讲解,让同学们能更好的掌握知识点。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 展示程序代码及其解释,让同学们直观的观察。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 对知识点进行总结和提炼,让同学们能更好的掌握知识点。 以表格的形式直观的展示常见的分词系统 ,让同学们直观观察其结果。 通过关键字段的展示来分步讲解特征提取,让同学们能更好的掌握知识点。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 通过一个案例来引出数据可视化这一知识点。 让同学们观察《数说亚运》的调研报告并回答问题,从而引起同学们的兴趣。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 通过案例与知识点的结合讲解,让同学们能更好的掌握知识点 图文结合的方式展示知识点,同学们能更好的掌握知识点。 通过关键字段的展示来分步讲解可视化工具,让同学们能更好的掌握知识点。 以对比的方式展示可视化工具库,让同学们在对比中学习。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 图文结合的方式展示知识点,同学们能更好的掌握知识点。 课 堂 练 习 (有题有答案有解析) 1.下列社交网络数据处理方案中,采用了图结构的是(   ) A.用户属性数据以表格形式存储,进行关系型数据库查询 B.用户关系数据由节点和边组成,直观表示实体之间的关系 C.用户行为数据以时间序列形式存储,分析时间维度上的变化 D.用户评论内容数据以文本形式存储,进行自然语言处理 答案:B 解析:本题考查图结构。图结构是由节点和边组成,用于直观表示实体之间的关系。选项A采用的是关系型数据库存储方式;选项C是以时间序列形式存储数据;选项D是对文本数据进行自然语言处理。而选项B中用户关系数据由节点和边组成,符合图结构的特点。故答案为:B。 2.实时处理与批处理整合的优势有(   ) ①增加了系统开销 ②有利于降低使用成本 ③可以在同一个平台做批处理计算和流计算 ④缩短了批处理计算和流计算之间的切换延时 A.①②③ B. ①② C.①③④ D.②③④ 答案:D 解析:本题考查实时处理与批处理整合。实时处理与批处理整合可以在同一个平台做批处理计算和流计算,减少了在不同系统间切换的需求,从而有利于降低使用成本,同时也缩短了批处理计算和流计算之间的切换延时。而增加系统开销并不是实时处理与批处理整合的优势。故答案为:D。 3.为了加强校园安保工作,学校采用人脸识别的方式进出校门,人脸识别属于数据处理过程中的(   ) A.明确目标 B.数据采集 C.数据加工 D.数据分析 答案:D 解析:本题考查的是数据处理。数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。人脸识别属于数据处理过程中的数据分析。故本题应选D。 4.编写一个Python程序,读入《三国演义》文本内容,使用jieba模块对文本进行中文分词,按回合统计“刘备”和“诸葛亮”的出场频率,并使用matplotlib模块实现数据可视化,效果如图所示。下列说法不正确的是(   ) A.原始的《三国演义》文本内容属于非结构化数据 B.文本数据处理过程中先完成中文分词再进行特征提取 C.据图可观察到“诸葛亮”在前30回出场频率极低 D.图中“诸葛亮”的出场频率使用散点图实现数据可视化 答案:D 解析:本题考查的是数据处理。《三国演义》文本内容无固定结构,属于非结构化数据,A 正确。文本处理常先分词,再基于分词结果提取特征(如统计人物出场 ),B 正确。 从图中看,前 30 回代表 “诸葛亮” 的折线近乎 0,出场频率极低,C 正确。 图中 “诸葛亮” 出场频率是用折线图(连续曲线)可视化,不是散点图,D 错误。故选D。 5.Hadoop是一个可运行于大规模计算机集群上的分布式系统基础架构。下列有关Hadoop的说法,不正确的是(   ) A.采用NTFS文件系统将大规模海量数据存储到不同的存储节点 B.采用分布式数据库HBase组织和管理大规模数据 C.采用并行计算模型MapReduce可以将任务进行分解、分发并汇总输出结果 D.适用于静态数据的批处理 答案:A 解析:本题考查Hadoop。Hadoop采用的是HDFS(Hadoop Distributed File System)文件系统来存储大规模海量数据,而不是NTFS文件系统;HBase是Hadoop的分布式数据库,可用于组织和管理大规模数据;MapReduce是Hadoop的并行计算模型,能将任务进行分解、分发并汇总输出结果;Hadoop适用于静态数据的批处理。故答案为:A。 6.大数据处理环节,大致可按阶段划分为获取、储存、挖掘分析、最终应用与服务等步骤。在农业生产过程中,利用传感器监测光照、温度、二氧化碳、氧气等数据属于大数据处理的(  )环节。 A.获取 B.存储 C.挖掘分析 D.最终应用 答案:A 解析:本题主要考查大数据处理。利用传感器监测光照、温度、二氧化碳、氧气等数据属于大数据处理的获取环节,故本题选A选项。 7.浙江某中学准备充分利用现今的科学技术,举办一场盛大的运动会。为配合运动会顺利进行,学校计算机社团开发了一套运动会管理系统,实现运动员报名、比赛数据传输、气候预判、成绩排名等功能。为体现公平公正公开原则,所有运动员检录由人工智能进行人脸识别,自动登记入场信息。利用某平台的大数据进行气象预测,下列描述正确的是(   ) A.气象预测所需的实时数据一般采用批量处理方式 B.该系统对大数据进行计算的过程依赖于规范的结构化数据 C.有关气象的大数据只有及时处理才能充分发挥价值 D.只有通过大数据分析出天气变化的原因,才能对气候预判越来越准 答案:C 解析:本题考查大数据相关内容。A选项,气象预测所需的实时数据一般采用流计算,静态数据采用批处理方式,选项错误;B选项,大数据一般结合结构化、半结构化和非结构化数据,选项错误;C选项,有关气象的大数据只有及时处理才能充分发挥价值,选项正确;D选项,大数据不探求因果关系,而是注重数据关联,选项错误。故本题答案是C选项。 8.为了提高学校路口等易发事故路段的安全性,交通部门采取了精细化的信号灯管控措施。经过对某校路口近一年来的交通流监测数据的深入分析,交通部门决定在高峰时段(上午7点30分到7点50分,下午16点到16点50分)采用常规的红绿灯模式,而在其他时段仅维持“黄闪”模式,用以提醒司机减速慢行,保障行人安全。下列关于大数据的说法,正确的是(   ) A.道路监控记录的数据都是结构化数据 B.近一年来产生的数据可利用分治思想进行处理 C.停电故障造成某一天数据缺失,会对最终分析结果产生较大影响 D.道路监控记录大量数据,但在事故后仅需分析几十秒数据,表明大数据存在低价值性 答案:B 解析:本题考查数据相关内容。A选项,结构化数据是指按照一定的规则和格式进行组织和存储的数据,它具有明确的数据类型和关系,可以通过预定义的模式或模型进行描述和解释,常见的结构化数据包括关系型数据库中的表格数据、电子表格中的数据、XML文件中的数据等;非结构化数据是指没有明确的结构和格式的数据,它不符合传统的表格、行列或关系型数据库的组织形式,非结构化数据的特点是多样性、复杂性和不规则性,常见的非结构化数据包括文本文档、电子邮件、社交媒体帖子、音频和视频文件、图像、日志文件等;道路监控记录的数据都是非结构化数据,选项错误。B选项,近一年来产生的数据可利用分治思想进行处理,选项正确。C选项,交通部门经过对某校路口近一年来的交通流监测数据的深入分析,采取了精细化的信号灯管控措施,停电故障造成某一天数据缺失,不会对最终分析结果产生较大影响,选项错误。D选项,道路监控记录大量数据,但在事故后仅需分析几十秒数据,表明大数据价值密度低,选项错误。故本题答案是B选项。 课 堂 小 结 1.大数据具有数据量大、数据来源与类型多样、处理速度快等特点。 2.处理大数据时,一般采用分治思想。 3.分布式计算(Distributed Computing)是把一个需要非常巨大的计算能力才能解决的问题分成许多小部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。 4.并行处理(Parallel Processing)是计算机系统中能同时执行两个或更多处理的一种计算方法。并行处理的主要目的是节省大型和复杂问题的处理时间。 5.大数据处理按照类型可划分为对静态数据的批处理、对流数据的实时计算和对图结构数据的图计算。 6.选用Python语言编程进行数据处理,可以调用Python的扩展模块,常用的扩展模块有numpy、scipy、pandas和matplotlib等。 7.pandas提供了Series和DataFrame两种数据结构。 8.matplotlib是一个绘图库,使用其中的pyplot子库所提供的函数可以快速绘图和设置图表的坐标轴、坐标轴刻度、图例等。 9.文本数据处理主要应用在搜索引擎、情报分析、自动摘要、自动校对、论文查重、文本分类、垃圾邮件过滤、机器翻译、自动应答等方面。 反 思 评 价 通过本节课的教学,基本达成了预设的教学目标。对于大数据处理中的一些难点,如分布式存储和计算原理、性能优化等,虽然在教学中进行了讲解,但学生的理解可能还不够深入。大部分学生能够独立完成给定的任务,并在过程中积极思考、主动探索,表现出了较强的学习积极性和主动性。同时,要关注学生的个体差异,提供不同层次的问题和任务,满足不同学生的学习需求。在评价环节,要鼓励学生相互学习、共同进步,培养学生的团队合作精神和批判性思维。 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $

资源预览图

4.2 大数据处理(教学设计)信息技术浙教版(2019)必修1
1
4.2 大数据处理(教学设计)信息技术浙教版(2019)必修1
2
4.2 大数据处理(教学设计)信息技术浙教版(2019)必修1
3
所属专辑
相关资源
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。