1. 某学院举行运动会,比赛设跳高、100米等项目,每个项目分男子组和女子组。现要进行报名数据处理和比赛成绩分析。请回答下列问题:

图 a

图 b

(1) 运动会报名规则为:对于每个项目的男子组和女子组,每个专业最多各报5人(如“软件工程”专业在男子跳高项目中最多报5人)。软件工程专业的报名数据保存在DataFrame对象df中,如图a所示。若要编写Python程序检查该专业男子跳高项目报名是否符合规则,下列方法中,正确的是 ______ (单选,填字母)。 A. 从df中筛选出性别为“男”的数据dfs,再从dfs中筛选出项目为“跳高”的数据,判断筛选出的数据行是否超过5行 B. 对df中数据按性别排序并保存到dfs中,再从dfs中筛选出项目为“跳高”的数据,判断筛选出的数据行是否超过5行 C. 从df中筛选出项目为“跳高”的数据dfs,判断dfs中是否有连续5行以上的男生数据
(2) 运动员比赛成绩的部分数据如图b所示。根据已有名次计算得,第1名至8名分别计9,7,6,5,4,3,2,1分,第8名之后计0分。实现上述功能的部分Python程序如下,请在程序中划线处填入合适的代码。

import pandas as pd

import matplotlib.pyplot as plt

#读取如图 b 所示数据,保存到 DataFrame 对象 df1 中,代码略

f = [9, 7, 6, 5, 4, 3, 2, 1]

for i in range(0,len(dfl)):

    rank = df1.at[i,"名次"] #通过行、列标签取单个值

    score = 0

    if rank <= 8:

       

    df1.at[i,"得分"] = score

(3) 根据上述 df1 中的得分数据,统计各专业总分,绘制如图 c 所示的柱形图,实现该功能的部分 Python程序如下:

df2 = dfl.groupby("    ▲    ",as_index=False).sum()       #分组求和

#设置绘图参数,代码略

plt.bar(x,y) #绘制柱形图

①请在程序中划线处填入合适的代码。

②程序的方框中应填入的正确代码为 (单选,填字母)

A.x = df1["专业"]

y = df1["总分"]

B.x = df2["专业"]

y = df2["得分"]

C.df1["专业"] = "专业"

df1["总分"] = "总分"

D.Df2["专业"] = "专业"

Df2["得分"] = "得分"

【考点】
编程处理数据与可视化; 表格数据的图表呈现;
【答案】

您现在未登录,无法查看试题答案与解析。 登录
综合题 困难
能力提升
换一批
2. 某校在高一年级第一学期期末开展“小书虫”评选活动,评选规则如下:撰写“观后感”10篇及以上,并且“总借阅量”为年级前50(需要考虑“总借阅量”同为第50名的学生要同时取出)的学生获得“小书虫”称号,获得“小书虫”称号最多的班级获得“书香班级”称号。小王打开“高一年级借阅表.xlsx”文件(如图a所示),利用python编程实现统计分析功能。

import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif']=['SimHei']#用来正常显示中文标签

df=pd.read_excel("高一年级借阅表.xlsx")

(1) 统计每位学生的总借阅量。

for i in df.index:

    for j in range(9,14):

        s=+"月"

        df.at[i,'总借阅量']=df.at[i,'总借阅量']+df.at[i,s]

(2) 授予符合条件的学生“小书虫”称号,需要考虑“总借阅量”同为第50名的学生要同时取出,结果如图b所示。

data={'班级':df.班级, '借阅量':df.总借阅量,'观后感':df.观后感,'荣誉':""}

dftj=pd.DataFrame(data)

df_hz=dftj[dftj["观后感"]>=10]

df_hz=df_hz.sort_values("借阅量",ascending=False)

df_hz=______________________

df_hz['荣誉']='小书虫'

print(df_hz)

在程序中②处填写代码,正确的选项是(   )(单选,填字母)。

A. df_hz.head(50) B. df_hz.tail(50) C. df_hz[df_hz["借阅量"]>=df_hz.values[49][1]] D. df_hz[df_hz["借阅量"]>=df_hz.at[49,"借阅量"]]
(3) 授予符合条件的班级“书香班级”称号

df_g=df_hz.groupby('班级').荣誉.count()

bj="";max=0

for i in range(len(df_g)):

    x=

    if x>max:

        max=x

        bj=df_g.index[i]

print('书香班级为:'+bj+',该班共有小书虫'+str(max)+'人。')

(4) 绘制“书香班级排行榜”

plt.bar(df_g.index, )

plt.title('书香班级排行榜')

plt.show()

(5) 下列语句可实现方框处的代码功能的是(   )(单选,填字母) A. df.总借阅量=df.sum(axis=1) B. df.总借阅量=df.sum()-df.观后感 C. df.总借阅量=df.sum(axis=1)-df.观后感
综合题 普通