组卷题库 > 高中信息技术试卷库
试题详情
某市普通高中选课数据如图1所示,学生从地理、化学、生物等科目中选择三门作为高考选考科目,“1”表示已选择的选考科目。使用Python编程分析每所学校各科目选考的总人数、全市各科选考总人数及其占比,经过程序处理后,保存结果如图2

图1

图2

实现上述功能的Python程序如下:

import pandas as pd

import itertools

#读数据到pandas的 DataFrame结构中

df=   ①    (”xk73.csv”,sep=‘.’,header=‘infer’,encoding=‘utf-8’)

km=[‘物理’ ,‘化学’ ,‘生物’ ,‘政治’ ,‘历史’ ,‘地理’ ,‘技术’ ]

#按学校分组计数

sc=df.groupby(‘    ②    ’,as_index=False).count( )

#对分组计数结果进行合计,合计结果转换为 DF结构并转置为行

df_sum=pd.DataFrame(data=sc.sum()).T

df_sum[‘学校代码’]=‘合计’

#增加"合计"行

result=sc.append(df_sum)

#百分比计算

df_percent=df_sum

df_percent[‘学校代码’]=‘比例’

for k in km:

per=df_percent.at[0,k]/zrs

df_percent[k]=per

#增加"百分比"行

result=result.append(df_percent)

#删除"姓名"列

result=   ③   

#修改"学生编号"为"总人数"

result=result.rename(columns={‘学生编号’:‘总人数’})

#保存结果,创建 Excel文件.生成的 Excel文件

result.to_excel("学校人数统计.xlsx")

知识点
参考答案
采纳过本试题的试卷
教育网站链接