随着就业压力越来越多,社会对学历要求越来越高,考研成为了提升就业竞争能力的首选。以下为小编收集的考研信息,用最小二乘法算法进行预测。

基本思想:求出这样一些未知参数使得样本点和拟合线的总误差(距离)最小

公式推导:

下表为我收集的1995年到2017年历届考研人数数据。

考硕年份

报名人数(万)

报名增长率

录取人数(万)

考录比例

1995

15.5

38.40%

4

3.6:1

1996

20.4

31.80%

4.7

4.4:1

1997

24.2

18.60%

5.1

4.7:1

1998

27.4

13.20%

5.8

4.7:1

1999

31.9

16.40%

7.2

4.9:1

2000

39.2

22.90%

10.3

4.6:1

2001

46

17.30%

13.3

4.2:1

2002

62.4

35.70%

16.4

3.2:1

2003

79.7

27.70%

22

2.9:1

2004

94.5

18.60%

33

2.9:1

2005

117.2

24%

32.4

3.6:1

2006

127.1

8.40%

40.2

3.2:1

2007

128.2

0.90%

36.4

3.5:1

2008

123

-4.10%

39

3.0:1

2009

124.6

1.30%

47.5

2.6:1

2010

140

12.40%

46.5

3:01

2011

151.1

7.90%

49.5

3:01

2012

165.6

9.60%

51.7

3.2:1

2013

176

6.30%

53.9

3.3:1

2014

172

-2.30%

57

3.0:1

2015

164.9

-4.10%

49

3.3:1

2016

177

7%

51.7

3.4:1

2017

201

13.56%

--

预测4:1

使用代码的方法:将上面数据黏贴到EXCEL中,起名为ky.xlsx。放在工作路径下。运行下面代码就可以来了 。

matlab 代码

clc;clear;
%author:猪猪侠
%date:2015-12-19
%邮箱:2377389590@qq.com
[data,TEXT,RAW]=xlsread('ky.xlsx');%导入数据
Y1=data(:,2)'
year=1995:2020; %未来三年
beta1=sum(((year(1:23)-1995)-mean(year(1:23)-1995)).*(Y1-mean(Y1)))/sum(((year(1:23)-1995)-mean((year(1:23)-1995))).^2)
gamma1=mean(Y1)-beta1*mean((year(1:23)-1995))
YY1=gamma1+beta1.*([year-1995]) %预测报考人数
Y2=data(1:end-1,4)'
beta2=sum(((year(1:22)-1995)-mean(year(1:22)-1995)).*(Y2-mean(Y2)))/sum(((year(1:22)-1995)-mean((year(1:22)-1995))).^2)
gamma2=mean(Y2)-beta2*mean(year(1:22)-1995)
YY2=gamma2+beta2.*([year-1995]) %预测报考人数
plot(year,YY1,'r-s')
hold on
plot(year(1:23),data(:,2),'g-d')%实际人数
plot(year(1,1:22),Y2,'m-p')
plot(year,YY2,'b-h')
xlabel('年份')
ylabel('人数(万)')
legend('预测报考人数','实际报考人数','实际录取人数','预测录取人数')
set(gca,'XTick',[1995:1:2020])
grid on

预测结果图

看完了预测图,内心拔凉拔凉的,报考人数越来越多,录取比例相对于往年的录取比例呈现递增趋势,但是录取比例的增长变化率没有报考人数增长的变化率快;说明考上研究生的比例占总人数比例越来越小。不管怎么样!小编要努力学习了!加油!各位考研党!

更新:python代码

今天是2020年2月9日,无聊看了一下2年前的博客,现在用python写一下一元线性回归预测

import numpy as np
from matplotlib import pyplot as plt
y1=np.array([15.5,20.4,24.2,27.4,31.9,39.2,46,62.4,79.7,94.5,117.2,127.1,128.2,123,124.6,140,151.1,165.6,176,172,164.9,177,201])
y2=np.array([4,4.7,5.1,5.8,7.2,10.3,13.3,16.4,22,33,32,40.2,36.4,39,47.5,46.5,49.5,51.7,53.9,57,49,51.7,80.5])
x=np.arange(1,len(y1)+1)
b1=np.sum((x-np.mean(x))*(y1-np.mean(y1)))/np.sum((x-np.mean(x))**2)
b2=np.sum((x-np.mean(x))*(y2-np.mean(y2)))/np.sum((x-np.mean(x))**2)
a1=np.mean(y1)-b1*np.mean(x)
a2=np.mean(y2)-b2*np.mean(x)
X=np.arange(1,len(x)+3)
Y1=b1*X+a1
Y2=b2*X+a2
plt.plot(x,y1,'g-',label='实际报名人数')
plt.plot(X,Y1,'r-s',label='预测报名人数')
plt.plot(x,y2,'m-p',label='实际录取人数')
plt.plot(X,Y2,'b-h',label='预测录取人数')
plt.xlim(X.min(),X.max()+1)
plt.ylim(0,Y1.max()*1.1)
plt.grid(c='k',linestyle=':')
plt.rcParams['font.sans-serif']=['SimHei'] #显示中文标签
plt.rcParams['axes.unicode_minus']=False   #解决负号“-”显示为方块的问题
plt.legend()
plt.show()

机器学习tensorflow训练一元线性模型预测(训练25000次)

参考2021年2月26自己写的博客tensorflow 线性回归 预测_猪猪侠-CSDN博客_tensorflow回归预测,稍加改动就行了,简单的一批

import numpy as np
from matplotlib import pyplot as plt
import tensorflow as tf
plt.rcParams['font.sans-serif']=['SimHei'] #显示中文标签
plt.rcParams['axes.unicode_minus']=False   #解决负号“-”显示为方块的问题
y1=np.array([15.5,20.4,24.2,27.4,31.9,39.2,46,62.4,79.7,94.5,117.2,127.1,128.2,123,124.6,140,151.1,165.6,176,172,164.9,177,201])
y2=np.array([4,4.7,5.1,5.8,7.2,10.3,13.3,16.4,22,33,32,40.2,36.4,39,47.5,46.5,49.5,51.7,53.9,57,49,51.7,80.5])
x=np.arange(1,len(y1)+1)
model=tf.keras.Sequential([tf.keras.layers.Dense(1,input_shape=(1,))])
model.compile(optimizer='adam',loss='mse')
model.fit(x,y1,epochs=25000)#训练2.5w次
Y1=model.predict(x)
model.fit(x,y2,epochs=25000)#训练2.5w次
Y2=model.predict(x)
plt.plot(x,y1,'g-',label='实际报名人数')
plt.plot(x,Y1,'r-s',label='预测报名人数')
plt.plot(x,y2,'m-p',label='实际录取人数')
plt.plot(x,Y2,'b-h',label='预测录取人数')
plt.legend()
plt.show()

欢迎加群:707914447

function [k,b]=min2plot(x,y)
k=sum((x-mean(x)).*(y-mean(y)))/sum((x-mean(x)).^2);
b=mean(y)-k*mean(x);
end
%拟合情况
% [x,y]=XB_DataPrase(path,1024);
% f = fittype('a0 + a1*cos(x*w) + b1*sin(x*w)');
% ncoeffs = numcoeffs(f);
% coeffs = coeffnames(f);
% f = fittype('Fourier1');
% coeffnames(f);
% formula(f);
% [c,gof] = fit(x',y',f);
% coeffvalues(c)

利用最小二乘法算法预测考研人数相关推荐

  1. DL之GRU:基于2022年6月最新上证指数数据集结合Pytorch框架利用GRU算法预测最新股票上证指数实现回归预测

    DL之GRU:基于2022年6月最新上证指数数据集结合Pytorch框架利用GRU算法预测最新股票上证指数实现回归预测 目录 基于2022年6月最新上证指数数据集结合Pytorch框架利用GRU算法预 ...

  2. 随机森林 html5,利用随机森林回归算法预测总有机碳含量

    受美国"页岩气革命"的影响,页岩气勘探受到了大量的关注( 现有利用测井曲线预测TOC的方法有4类:①利用单曲线或多曲线建立回归关系的预测方法,如利用密度曲线(DEN)预测TOC.利 ...

  3. DL之LSTM:基于《wonderland爱丽丝梦游仙境记》小说数据集利用LSTM算法(层加深,基于keras)对单个character字符预测

    DL之LSTM:基于<wonderland爱丽丝梦游仙境记>小说数据集利用LSTM算法(层加深,基于keras)对单个character字符预测 目录 基于<wonderland爱丽 ...

  4. ML之kNNC:基于iris莺尾花数据集(PCA处理+三维散点图可视化)利用kNN算法实现分类预测daiding

    ML之kNNC:基于iris莺尾花数据集(PCA处理+三维散点图可视化)利用kNN算法实现分类预测 目录 基于iris莺尾花数据集(PCA处理+三维散点图可视化)利用kNN算法实现分类预测 设计思路 ...

  5. DL之GD:利用LogisticGD算法(梯度下降)依次基于一次函数和二次函数分布的数据集实现二分类预测(超平面可视化)

    DL之GD:利用LogisticGD算法(梯度下降)依次基于一次函数和二次函数分布的数据集实现二分类预测(超平面可视化) 目录 利用LogisticGD算法(梯度下降)依次基于一次函数和二次函数分布的 ...

  6. ML之kNNC:基于iris莺尾花数据集(PCA处理+三维散点图可视化)利用kNN算法实现分类预测

    ML之kNNC:基于iris莺尾花数据集(PCA处理+三维散点图可视化)利用kNN算法实现分类预测 目录 基于iris莺尾花数据集(PCA处理+三维散点图可视化)利用kNN算法实现分类预测 设计思路 ...

  7. ML之xgboost:利用xgboost算法对breast_cancer数据集实现二分类预测并进行graphviz二叉树节点图可视化

    ML之xgboost:利用xgboost算法对breast_cancer数据集实现二分类预测并进行graphviz二叉树节点图可视化 目录 实现结果 实现代码 实现结果

  8. DL之CNN:利用CNN算法实现对句子分类+进行情感分析(预测句子情感)

    DL之CNN:利用CNN算法实现对句子分类+进行情感分析(预测句子情感) 目录 CNN算法设计思路 代码实现 CNN算法设计思路 b 代码实现 后期更新--

  9. ML之xgboost:利用xgboost算法(自带,特征重要性可视化+且作为阈值训练模型)训练mushroom蘑菇数据集(22+1,6513+1611)来预测蘑菇是否毒性(二分类预测)

    ML之xgboost:利用xgboost算法(自带,特征重要性可视化+且作为阈值训练模型)训练mushroom蘑菇数据集(22+1,6513+1611)来预测蘑菇是否毒性(二分类预测) 目录 输出结果 ...

最新文章

  1. exchange之2003迁移至2007
  2. for java_Java For循环
  3. send/recv阻塞和非租塞不同
  4. Programming Computer Vision with Python (学习笔记八)
  5. hdfs oiv命令查看FsImage镜像文件内容
  6. ZYAR20A 亚克力2驱 蓝牙 298寻迹避障机器人 —— 小车前后左右综合实验
  7. 虚拟空间独立服务器哪个好,共享虚拟主机和独立哪个好
  8. java后端传object给js_【JSON】JSON在前端和后端传递
  9. pytorch flatten函数_1. PyTorch中的基本数据类型——张量
  10. 如何监听事件里发生的错误_Swing 如何进行事件监听
  11. RTL8188无线网卡AP功能的开发过程
  12. 重装系统(U盘篇+U盘复原)——保姆级教学
  13. 计算机专业建设会议纪要,智能控制教研室会议纪要6号
  14. 使用百度翻译API实现一键翻译
  15. css动画无限循环转圈,css实现无限循环
  16. appleid注册服务器错误,连接apple id 服务器时出错(Apple ID 验证连接失败,试试这招)...
  17. 鸿蒙和小米哪个值得入手,鸿蒙系统能够吸引小米的优势是什么
  18. gtx1050ti安装win10和ubuntu16.04双系统
  19. python 读取excel表格数据,然后写入word模板,批量生成
  20. 2.H.265/HEVC —— 帧内预测

热门文章

  1. NLP实战:财经新闻热点发现
  2. 用Unity开发基于Oculus Rift的体验游戏时遇到天空盒重影问题的解决方法
  3. 教你在一分钟之内,将100页Word转换为PPT,简直太厉害了
  4. #5 最长回文子串(中等)
  5. sql 注入_商洛学院司徒荆_新浪博客
  6. bit、Byte、bps、Bps、pps、Gbps的单位详细说明及换算
  7. 我是如何放弃投行回归技术的
  8. 中断API之enable_irq
  9. 小白用ESP8266NodeMcu机智云SOC方案开发经验分享
  10. 网易云音乐插件v2.8.2 安卓版