这篇教程Python数据分析与处理(一)--北京高考分数线统计分析写得很实用,希望能帮到您。 前言: 为了帮助广大考生和家长了解高考历年的录取情况,很多网站都汇总了各省市的录取控制分数线,为广大考生填报志愿提供参考。因受多种因素影响,每年的分数线或多或少会有一些变动。采集北京2006-2019年的信息。使用Python的Pandas库完成以下数据分析。
1.1 数据爬取包含三部分内容:从哪里爬取,如何爬取,爬取的结果 代码: import pandas as pdimport numpy as npdata=pd.read_excel("scores.xlsx",header=1)print(data) 运行结果: 
分析:我是读取的本地的数据文件进行的数据分析。 有兴趣的话可以从网站上面下载相关的数据或者是自己使用爬虫爬取相关的数据源。进行数据分析 这个数据的分析部分我主要是采用的是Pandas numpy 做数据的预处理。 和matplotlib 进行数据的可视化展示。
1.2 最高分最低分统计mindata= data.groupby(['文科','理科'], as_index=False).min(axis=1) maxdata= data.groupby(['文科','理科'], as_index=False).max(axis=2) print(data.min())print(data.max()) 
进行数据的处理,最高分最低分统计,因为有两个不同的年份的成绩,并且分了文科和理科所以就有2个文科2个理科 - 我们使用
groupby 按照文理科进行分组 - 然后使用
max() 和min() 求最大值和最小值‘ - 经过分析处理可以看到打印出来的最大值和最小值
1.3 一本二本理科差值统计代码: s1math=data["一本分数线","理科"]print(s1math)print(s1math[0]-s1math[2])s1c=data["一本分数线","文科"]print(s1c[0]-s1c[2])s2math=data["二本分数线","理科"]print(s2math[0]-s2math[2])s2c=data["二本分数线","文科"]print(s2math[0]-s2math[2]) 运行结果: 
注意: 首先我们取出相应的文理科一本以及二本的成绩,然后再进行相关的极差的计算就是使用前一个数减去后面的一个数就OK。 print(s1math[0]-s1math[2])
1.4 2006—2019年近14年每科分数线的平均值统计代码: |