当前位置: 高中信息技术 / 综合题
  • 1. (2022高二下·舟山期末) 某中学为更好组织高三学生参加某高校的三位一体招生考试(该高校三位一体招生学业水平考试成绩折算如下:各科学考等级按A=10分、B=9分、C=8、D=6分进行折算),统计了所有学生学业水平成绩情况,并保存在“学考成绩.xlsx”中,如图a所示。用Python读取“学考成绩.xlsx”文件,并计算每个学生的折算分,筛选出各班“A总数”最多的前5条数据,导出到“各班前5名统计.xlsx”文件中。同时为直观展示各班折算分92分以上人数对比,生成图b所示图表。

    图 a

    图 b

    1. (1) 在对表格进行整理时发现,表格中关于“德乐蕊”的记录,可能存在的数据问题是 (选填:A .数据缺失/B .数据异常/C .逻辑错误/D .格式不一致)。
    2. (2) “各班前5名统计.xlsx”文件中共有 位学生数据。
    3. (3) 请在下述程序的划线处填上合适的代码。

      Python 程序代码如下:

      import pandas as pd

      import matplotlib.pyplot as plt

      plt.rcParams['font.sans-serif']=['SimHei']

      df=pd.read_excel('学考成绩.xlsx')

      #正常显示汉字

      df.折算分=

      #对df以“班级”为主要关键字升序、“A总数”为次要关键词降序进行排序

      df_sort=df.sort_values(['班级', 'A 总数'], ascending=[True, False])

      result=df_sort.head(5)

      for i in range(2, 7):

      result=result.append(df_sort[ ].head(5), ignore_index=True) result.to_excel('各班前5名统计.xlsx')

      df=df[df.折算分>=92]

      df_count=df.groupby('班级').count( )

      #修改“折算分”列名为“上线人数”

      df_count = df_count.rename(columns={'折算分':'上线人数'})

      x=df count.index

      y=

      plt.figure(figsize=(8, 4))

      plt.bar(x, y,  label='上线人数')

      plt.ylim(15, 30)

      plt.legend( )

      plt.show( )

微信扫码预览、分享更方便