当前位置: 高中信息技术 / 综合题
  • 1. (2023高二上·慈溪期末) 统计高一学生选课情况。高一学生要从物理、化学、生物、政治、历史、地理、技术这七门科目中选择3门作为选考科目,“1”表示已选择科目,数据存储在文件“xk.xlsx”中。

    ⑴根据选课情况完成填充组合列(L列)。

    ⑵统计组合数量,并将选课组合人数最多的5个组合以柱形图的方式呈现(如图所示)。

    import pandas as pd

    import matplotlib.pyplot as plt

    df=pd.read_excel ("xk.xlsx")

    plt.rc('font',**{'family':'SimHei'})

    zh=[ ]

    n=df.姓名.count()

    xk=["物理","化学","生物","政治","历史","地理","技术"]

    #处理组合名, 将组合名依次存入列表 zh 中 for i in range(n):

    a=""

    for x in xk:

        if df.at[i,x]==1:

            if x=="历史":

                a=a+"史"

            else:

                a=a+x[0]

        zh.append(a)

    df["组合"]=

    #将组合名填入 L 列

    df1=df.groupby("组合",as_index=False).姓名.count()

    df1.rename(columns={"姓名":"人数"},inplace=True)  #将列标题”姓名”改成”人数” df1.sort_values("人数",,inplace=True)

    df2=df1[0:5]

    x=df2["组合"]

    y=df2["人数"]

    plt. (x,y)

    plt.show ()

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