利用最小二乘法算法预测2018-2020考研人数

   

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

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

公式推导:

                     

                   

下表为我收集的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。放在工作路径下。运行下面代码就可以来了 。

clc;clear;
%author:猪猪侠
%date:2017-12-19
[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

预测结果图


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

猜你喜欢

转载自blog.csdn.net/zzx2016zzx/article/details/80589050