第 14 题
答案与解析
第(1)小题
A
选项分析
第(2)小题
B
D
选项分析
第(3)小题
A
C
选项分析
第(4)小题
升级性能更高的CPU
增加内存容量
服务器运行三年后,数据量和并发处理需求可能增加。提高处理器运算能力可加快任务处理,增加内存可减少因内存不足导致的频繁磁盘交换。也可根据实际瓶颈升级为读写速度更快的存储设备。
第(5)小题
E
B
C
数据处理过程
df=pd.read_csv("data.csv")读取CSV文件后得到DataFrame,每行是一条采集记录,列为“序号”“时间”“温度”“水位”。“序号”是普通数据列,df的默认行索引从0开始。
df.insert(0,"小时","")在第0列插入“小时”列,初值为空字符串,用于存放每条记录所属的小时。
for i in df.index:
t=df.at[i,"时间"]
df.at[i,"小时"]=t[:2]按行索引逐条读取时间字符串,截取前两个字符写入“小时”列。例如“00:10:00”得到“00”,“01:20:00”得到“01”。同一小时的记录因而具有相同的小时字符串,可据此归为一组。
df=df[df.温度>30]该语句保留当前df中“温度”值大于30的行,恰好等于30的行不保留。它位于①之后,因此筛选的具体含义取决于①对数据的处理。
plt.bar(df.小时,df.温度)绘图时从“小时”列取横坐标,从“温度”列取柱高,并按当前行顺序绘制。因此,最终df必须保留这两列,其行顺序还要与图b对应。
填空分析
①
题目比较的是各小时的平均温度,应先按“小时”分组求均值,再执行温度大于30的筛选;若先筛除单次温度不高于30的记录,计算出的就不再是该小时全部记录的平均温度。
后续用df.小时绘图,要求“小时”仍是普通列,所以选择as_index=False的E:
df=df.groupby("小时",as_index=False).mean()
F使用as_index=True,会把“小时”设为行索引,后续不能按原程序用df.小时取列。
分组求均值后每行代表一个小时,“温度”列由单次测量值变为该小时的平均温度。下表仅展示绘图所需两列;μ表示相应小时的实际温度均值,题面未提供完整数据,不能计算全部数值。
| index | 小时 | 温度 |
|---|---|---|
| 0 | 00 | μ00 |
| 1 | 01 | μ01 |
| … | … | … |
| 23 | 23 | μ23 |
这是按题目一天24小时数据组织的结果形态示意,其他数值列省略。
②
经过均值筛选后,图b中的5根柱子从左到右逐渐升高,小时顺序为11、15、12、14、13,因此应按小时平均温度升序排列,选择B:
df=df.sort_values("温度",ascending=True)
A按降序排列,虽可配合head(5)选出最高的5个小时,但柱子会从高到低排列,与图b不符。
③
升序排列后,温度均值最高的5个小时位于末尾,应选择C:
df=df.tail(5)
tail(5)取最后5行,并保留这5行内部的升序顺序,因而得到图b中从低到高的5根柱子。head(5)取的是通过筛选后温度均值最低的5个小时。排序和取行均不会自动重置原索引,但绘图直接使用“小时”和“温度”两列,不受索引不连续的影响。
问题反馈
解析有疑问或显示异常?请先复制题目信息,再打开反馈表单填写。
题目编号:2026_05_G3_jingchenglianmeng_q014
