欢迎来到代码驿站!

Python代码

当前位置:首页 > 软件编程 > Python代码

Python数据分析与处理(一)--北京高考分数线统计分析

时间:2022-09-13 08:48:31|栏目:Python代码|点击:

前言:

为了帮助广大考生和家长了解高考历年的录取情况,很多网站都汇总了各省市的录取控制分数线,为广大考生填报志愿提供参考。因受多种因素影响,每年的分数线或多或少会有一些变动。采集北京2006-2019年的信息。使用Python的Pandas库完成以下数据分析。

1.1 数据爬取

包含三部分内容:从哪里爬取,如何爬取,爬取的结果

代码:

import pandas as pd

import numpy as np

data=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年每科分数线的平均值统计

代码:

# 2006—2019年近14年每科分数线的平均值统计

data1=data[data['Unnamed: 0'].between(2006, 2014, inclusive=True)].groupby(['Unnamed: 0']).mean()

print(data1)

运行结果:

首先是进行数据的提取,然后进行平均值的求取。在这里我算的麻烦了,因为本来就是一个年份对应的是一个成绩。不是一对多的关系,所以下面的方法要更好一些。

也可以使用mean方法进行相关的平均值求取。

是一个成绩。不是一对多的关系,所以下面的方法要更好一些。

也可以使用mean方法进行相关的平均值求取。

上一篇:比较详细Python正则表达式操作指南(re使用)

栏    目:Python代码

下一篇:python数据可视化之条形图画法

本文标题:Python数据分析与处理(一)--北京高考分数线统计分析

本文地址:http://www.codeinn.net/misctech/213546.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有