资源简介 中小学教育资源及组卷应用平台2025普通高中信息技术学业水平考试优化集训11 pandas数据处理1.下列关于数据的说法错误的是( )A.数据整理的目的是对数据进行检测和修正B.数据处理的核心是数据,数据的质量不影响数据分析的结果C.数据重复往往在多数据源进行合并时出现D.不同格式的数据通过转换可以将其值按照统一标准进行表示2.下列有关Hadoop计算平台的说法中,不正确的是 ( )A.Hadoop计算平台是一个可运行于规模计算机集群上的分布式系统基础架构B.Hadoop计算平台适用于对静态数据进行处理C.Hadoop计算平台主要包括Common公共库、HDFS、HBase、MapReduce等模块D.Hadoop计算平台也适用于对流数据的实时处理3.下列数据不适合运用批处理计算的是( )A.全校上一次考试的成绩统计B.微博上一季的热词统计C.根据路况实时更新导航路线D.某商品价格过去一年的浮动情况4.不能实现选取df对象前5行数据记录的语句是( )A.df.head() B.df.head(5)C.df[0:5] D.df[5]回答下列第5~7题。5.某DataFrame对象df中包含“准考证号”“班级”“姓名”“文”“数学”…“总分”等10个数据列、多个数据行,能获取对象df第3个数据的“姓名”内容的语句有( )①df[2,'姓名'] ②df.at[2,'姓名'] ③df[2]['姓名'] ④df['姓名'][2] ⑤df.姓名[2]A.①②③ B.①②④C.②④ D.②④⑤6.如第5题对象df,能够降序排列输出总分大于等于600分的学生数据的代码组合是( )①df=df.sort_values(″总分″,ascending=True)②df=df.sort_values(″总分″,ascending=False)③df=df[″总分″,>=600]④df=df[df[″总分″]>=600]⑤print(df)A.①③⑤ B.①④⑤C.②③⑤ D.②④⑤7.如第5题对象df1,下列语句中,可以以班级为单位,统计出各班级“总分”的平均值的有( )①df.groupby('班级').mean()②df.groupby('总分').mean()③df.groupby('班级')['总分'].mean()④df.groupby('班级').总分.mean()⑤df.groupby('班级').describe()A.①②③④⑤ B.①②③⑤C.①③④⑤ D.①②③8.根据交通路况实时更新导航线路的应用场景中,下列处理方式中合理的是( )A.选用针对静态数据的批处理计算B.选用针对流数据的流计算C.选用针对图结构数据的图计算D.用统计分析软件提供的丰富的统计算法进行数据分析9.下列有关数据可视化方法的说法,错误的是( )A.要分析相等时间间隔下数据的发展趋势,可采用折线图B.要显示各部分数据在总数据中的大小和比例关系,可采用饼图C.要探究若干数据系列中各数值之间的关系,可采用柱形图D.要比较每个数据相对中心的数值变化,可采用雷达图10.下列关于大数据应用的说法,错误的是( )A.随着大数据在各行各业的应用,数据成为核心资产B.云计算对大数据的分析应用无太大帮助C.大数据在电子商务领域的应用,为商业的振兴起到了推动作用D.智能交通可以使交通运输服务和管理智能化11.文本数据处理的主要步骤包括:①结果呈现 ②特征提取 ③分词 ④数据分析⑤文本数据获取正确的顺序是( )A.⑤②④①③ B.⑤③①④②C.⑤①③②④ D.⑤③②④①12.有如下Python程序段。import pandas as pdlist=[['周欣怡','湖州',15,646],['王培新','杭州',16,598],['张佳明','杭州',16,609],['林逢春','嘉兴',15,547],['朱梁栋','湖州',16,588],['陈清瑞','嘉兴',15,571]]inf=pd.DataFrame(list,columns=['姓名','地区','年龄','总分'])print(inf)print('_' 20)print(inf.groupby('地区',as_index=True).mean())执行该程序段后,输出的结果是 (单选,填字母)。 13.小明从某网站上收集了2022年4月部分生产资料市场价格变动情况数据,数据集保存在“shuju.xlsx”中,格式如图a所示。图a为分析相关类别生产资料的涨跌幅情况,小明编写了以下Python程序。import pandas as pdimport matplotlib.pyplot as pltplt.rcParams['font.sans-serif']=['SimHei'] #正常显示中文字体df=pd.read_excel(″shuju.xlsx″)df[″涨跌幅″]= (1)通过数据计算添加涨跌幅列,请在划线处填写实现的方式。计算公式为:涨跌幅=(本期价格-上期价格)/本期价格 100。(2)若要对表格中的数据进行分类统计,并求其平均涨跌幅。请完善以下代码:g=df.groupby(″类别″,as_index=False)df1= df1=df1.sort_values(″涨跌幅″,ascending=False)(3)根据上述操作结果,制作一份显示类别涨跌幅平均值的图表,其格式如图b所示。各种类别对比分析图图b请完善以下代码。plt.figure(figsize=(8,4))plt.title(″各种类别对比分析图″)plt.bar(① ,df1[″涨跌幅″],label='涨跌幅') plt.xlabel(″类别″)plt.ylabel(② ) plt.legend()plt.show()14.某市普通高中选课数据如下图所示,学生从技术、化学、生物等科目中选择三门作为高考选考科目,“1”表示已选择的选考科目。图a各学校技术选考人数对比图b为分析各学校的学生选科数据,编写了如下程序:import pandas as pdimport matplotlib.pyplot as pltplt.rc'font', {'family':'SimHei'}plt.rcParams['axes.unicode_minus']=Falsedf=pd.read_csv(″xk73.csv″)(1)若要了解市里所有选考技术的学生情况,请在划线处给出合适代码,筛选出有选技术科目的同学信息:print( ) (2)使用Python编程分析每所学校各科目选考的人数(不同的学校代码表示不同的学校)。请在划线处填入合适的代码。g=df.groupby(① ,as index=false) #按学校进行分组 s2=② #按学校分别统计各科目的选考人数 s2.sort_values(″技术″,ascending=False) #按技术选考人数进行降序排序(3)若要做一个各学校技术选考人数的分析,添加如下程序段:plt.figure(figsize=(10,5))a=list(s2.学校代码)plt.xticks(range(1en(s2.学校代码)),a,rotation=45)#将各学校代码按降序顺序显示在x轴上p1t.③ (range(len(s2.学校代码)), ④ ) #对各学校及对应技术选考人数进行绘图plt.xlabel(″学校″)plt.ylabel(″技术选考人数″)plt.title(″各学校技术选考人数比对″)plt.show()划线处的代码应为 (单选,填字母)。 A.③barh ④df.技术B.③plot ④df.技术C.③bar ④s2.技术D.③scatter ④s2.技术15.某地区要对辖区内高中学生的高考选科情况进行统计,前期先用Excel收集各个学校每个学生的选科数据,界面如图所示。用Python处理上述Excel文件,统计每个学校各个学科的选科情况,并用图表展示学生人数最多的5个学校的物理学科与政治学科人数,代码如下:import pandas as pdimport numpy as npimport matplotlib.pyplot as pltdf=pd.read_excel(″xk73.xlsx″)#读数据到pandas的DataFrame结构中sc=df.groupby(① ,as_index=False).count()#按学校分组计数 sc=sc.drop('姓名',axis=1)#删除“姓名”列sc=sc.rename(columns={'学生编号':'总人数'})#修改“学生编号”为“总人数”sc_sort=sc.sort_values(″总人数″,ascending=False)#对分组计数结果进行排序x=np.arange(1,6)#产生列表[1,2,3,4,5]y1=sc_sort.head()[″物理″]② plt.figure(figsize=(8,4))plt.bar(x-0.2,y1,label=″wuli″,width=0.4)plt.bar(x+0.2,y2,label=″zhengzhi″,width=0.4)plt.ylim(50,400)plt.legend()df_sum=pd.DataFrame(data=sc.sum()).Tdf_sum['学校代码']='合计'③ #显示图表result=sc.append(df_sum)#增加“合计”行result.to_excel(″学校人数统计.xlsx″)#保存结果在划线处填写合适代码,完善程序。16.将系统数据库中高三年级一周(五天)考勤数据导出文件“kq.xlsx”,如图a所示,统计各班一周的缺勤率最高的3个班级(缺勤率%=一周未到人数/班级人数 100),并制作图表如图b所示,部分程序代码如下,请在划线处填入合适的代码。图a一周缺勤率最高的三个班级(单位:%)图bimport pandas as pdimport matplotlib.pyplot as pltplt.rc('font', {'family': 'SimHei'})#让图中的中文正常显示df = pd.read_excel(″kq.xlsx″)#读取Excel文件中的数据df1 = df.groupby(″班级″).sum()df1[″缺勤率%″]= df1[″未到″]/(df1[″班级人数″]/5) 100#计算各班缺勤率%#按“缺勤率%”降序排序并取前3行df2 = df1.sort_values(″缺勤率%″, ascending = False).① x = df2.indexy = df2[″缺勤率%″]plt.title(″一周缺勤率最高的三个班级(单位:%)″)#设置图表标题plt.② (x, y) #绘制柱形图,如图bplt.show()优化集训11 pandas数据处理1.B 解析 本题考查数据的相关知识。数据整理的目的是检测和修正有问题的数据,整合数据资源,规整数据格式,提高数据质量,选项A正确;数据处理的核心是数据,数据的质量直接影响数据分析的结果,选项B错误。2.D 解析 本题主要考查的是Hadoop计算平台。Hadoop计算平台适用于对静态数据进行处理,而对流数据的实时处理明显性能不足,因此答案为D。3.C 解析 批处理计算不适用于动态数据的处理。4.D 解析 head(n)函数返回DataFrame前n行数据,若不设置参数n,则默认返回前5行。df[0:5]选取df对象前5行数据,df[5]选取df对象第6列数据。5.D 解析 可以通过at方法获取DataFrame对象单个数据值,格式为df.at[index,column],所以②正确;或者根据列标题先获取整列,然后通过行索引获取单个数据值,其中获取一列数据可以通过字典记法或属性检索,第三行数据的行索引是2,所以④⑤均正确。6.D 解析 sort_values()函数中,参数ascending,默认值为True,表示升序,为False时是降序;对于DataFrame对象,可以通过布尔型数据选取满足条件的行,正确写法为df[df[″总分″]>=600];最后通过语句⑤输出结果。7.C 解析 统计各班级学生“总分”平均值需要按照“班级”分组计算。df.groupby('班级').mean()#按“班级”分组,计算各纯数值列平均值。df.groupby('总分').mean()#按“总分”分组,计算各纯数值列平均值。df.groupby('班级')['总分'].mean()#按“班级”分组,并选取“总分”列计算平均值。df.groupby('班级').总分.mean()#按“班级”分组,并选取“总分”列计算平均值。df.groupby('班级').describe()#按“总分”分组,计算各纯数值列的平均值、最大值等统计数据。8.B 解析 根据交通路况实时更新导航线路中数据为流数据,所以选用流计算。9.C 解析 关系的可视化可采用散点图或气泡图。10.B 解析 本题考查大数据应用的相关知识。云计算使千亿数据的检索实现了秒级返回,为大数据的分析提供了速度保障。11.D 解析 典型的文本处理过程主要包括分词、特征提取、数据分析、结果呈现等。12.B 解析 as_index:为True时自动把第1列作为了index,为False时默认索引0、1、2…。13.(1)(df.本期价格-df.上期价格)/df.本期价格 100(2)g.mean() (3)①df[″类别″]或df.类别 ②″涨跌幅″解析 (1)根据数量关系确定计算公式。(2)计算平均值使用mean()函数。(3)①观察题图b可知需要填横坐标数据来源。②此处需要填写横坐标y的标签(ylabel),由题图可知应该是“涨跌幅”。14.(1)df[df.技术==1](或df[df[″技术″]==1]) (2)①″学校代码″ ②g.sum()或g.count() (3)D 解析 本题考查pandas及绘图模块知识。(1)Dataframe中,要对某列进行筛选(查找并显示符合条件的值),可以通过df[df[″技术″]==1]或df[df.技术==1]来实现。(2)此处考查pandas中分组函数groupby的用法。依题意,本条语句按学校进行分组,分组的字段名应为“学校代码”,故①处填″学校代码″;①处代码已将分组后的对象赋值组变量g,②空对其进行计数,故填:g.count()。(3)观察题图b,可知当前是散点图(scatter),故选D。15.①″学校代码″ ②y2=sc_sort.head()[″政治″](或y2=sc_sort.head(5)[″政治″]) ③plt.show() 解析 本题考查数据处理知识。①题干说明需要“统计每个学校各个学科的选科情况”,所以需要根据“学校编号”分类汇总统计各学校的选科情况,此空填写分组的关键字,答案为“学校代码”。②根据上下文,此空是获取学生人数最多的5个学校的政治学科人数。前面代码段已经根据各学生总人数降序排序,再结合上一段代码,此空只需要将“物理”修改成“政治”。head()函数返回DataFrame的前n个数据记录,如果参数不写,默认参数是5,所以此空答案:y2=sc_sort.head()[″政治″]或y2=sc_sort.head(5)[″政治″]。③代码段plt.show()的功能是显示图形。16.①head(3) ②bar 解析 本题考查pandas数据处理知识。①根据提示可知,降序排序前提下取前三行,因此使用head(3)。②垂直柱状图,使用bar。21世纪教育网 www.21cnjy.com 精品试卷·第 2 页 (共 2 页)21世纪教育网(www.21cnjy.com) 展开更多...... 收起↑ 资源预览