大数据 爬虫Python AI Sql

用 Python 分析今年考研形势

2020-01-15  本文已影响0人  Python新视界

还有5天,就到了考研初试的时间了。

尽管今年研招网内部,已经做了优化改善,还是抵挡不住考生们的报名热情(网站崩溃)。

2017年考研人数增长至201万人,

2018年则达到238万人,

2019年考研报名人数达到290万人。

注:数据来自“中国教育在线”

为了看清近几年考研人数的增长趋势,我用python绘制如下的折线图。

从图中可以看出,2015年以来,考研报名人数的涨幅很大。预计今年考研人数在320-350万人。

如上图所示,2017年的报录比为2.78,2018年为3.12。随着报名人数的增多,录取人数不也在涨嘛!

实现代码

主要用到了pandas读取数据,matplotlib绘制折线图。其中遇到了一些中文编码的小坑,代码如下。

import pandas as pd

import matplotlib.pyplot as plt

# 第一,读取数据

df = pd.read_csv("kaoyan.csv", encoding='gb2312')

# print(df)

# 第二,绘制折线图

plt.rcParams['font.sans-serif'] = ['SimHei']

# 可以解释中文无法显示的问题

# 1)创建画布

plt.figure(figsize=(10,5),dpi=80)

# 2)绘制图像

plt.style.use('ggplot')

# matplotlib官方提供了五种不同的图形风格,

# 分别是:bmh、ggplot、dark_background、fivethirtyeight和grayscale

plt.plot(df["年份"], df["报名人数"] / 10000, label="报名人数")

plt.plot(df["年份"][:-1], df["录取人数"][:-1] / 10000, label="录取人数")

plt.title("近年考研人数报名及录取情况")

plt.xlabel("年份")

plt.ylabel("考生数量(单位:万人)")

# 设置数字标签

for a, b in zip(df["年份"], df["报名人数"] / 10000):

plt.text(a, b, b, ha='center', va='bottom', fontsize=10)

for a, b in zip(df["年份"][:-1], df["录取人数"][:-1] / 10000):

plt.text(a, b, b, ha='center', va='bottom', fontsize=10)

plt.legend()

plt.grid(True)

# 保存图像

plt.savefig("zhexian.jpg")

# 3)展示图像

plt.show()

结语

考研是一条路,也许艰辛,也许平坦。但走过这条路肯定就是艳阳天。

还有5天,祝努力拼搏了一年的朋友们,都能考上自己心仪的学校!

上一篇下一篇

猜你喜欢

热点阅读