R语言学习系列(来点实际的分析样例)

这是我辛辛苦苦搞来的数据,说明一下,国内生产总值来至于国家统计局(2011年除外),M2来自网络。

  
首先画散点图:
 
图什么意思,你懂的。
对M2和年份做拟合,当然是指数级的(从散点图可以看出)
> lm.sol<-lm(log(M2)~年份,data=DT)
> summary(lm.sol)
Call:
lm(formula = log(M2) ~ 年份, data = DT)
Residuals:
     Min       1Q   Median       3Q      Max
-0.04702 -0.03278 -0.02027  0.03591  0.06410
Coefficients:
              Estimate Std. Error t value Pr(>|t|)   
(Intercept) -3.061e+02  4.691e+00  -65.26   <2e-16 ***
年份         1.590e-01  2.342e-03   67.90   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.04318 on 14 degrees of freedom
Multiple R-squared: 0.997,      Adjusted R-squared: 0.9968
F-statistic:  4611 on 1 and 14 DF,  p-value: < 2.2e-16

从上面的数据可以看出,拟合相当完美,T,F检验都通过,而且相当显著,来画图:
> plot(DT$年份,DT$M2)
> lines(X,exp(predict(lm.sol,年份=X)))
 
M2 增长曲线很完美,但这不是幸福指数.
再来看看国内生产总值和M2的关系:
> lm.new<-lm(国内生产总值~M2,data=DT)
> summary(lm.new)
Call:
lm(formula = 国内生产总值 ~ M2, data = DT)
Residuals:
   Min     1Q Median     3Q    Max
-11426  -7328  -3155    885  33486
Coefficients:
             Estimate Std. Error t value Pr(>|t|)   
(Intercept) 3.015e+04  5.258e+03   5.733 5.17e-05 ***
M2          5.270e-01  1.345e-02  39.192 1.03e-15 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 12410 on 14 degrees of freedom
Multiple R-squared: 0.991,      Adjusted R-squared: 0.9903
F-statistic:  1536 on 1 and 14 DF,  p-value: 1.032e-15
>
从上面可以看出各项指标相当完美:
国内生产总值=30150+0.527*M2.

 M2是什么?不用我给你解释吧.预测一下,
今年的M2=?
先预测一下M2
> lm.sol<-lm(log(M2)~年份,data=DT)
> predict(lm.sol, data.frame(年份=c(2012)), interval="prediction", level=0.95)
       fit     lwr      upr
1 13.74976 13.6452 13.85432
> exp(predict(lm.sol, data.frame(年份=c(2012)), interval="prediction", level=0.95))
       fit      lwr     upr
1 936364.6 843401.4 1039575
>
今年的国内生产总值约:
predict(lm.new, data.frame(M2=c(936364.6)), interval="prediction", level=0.95)
     fit      lwr      upr
1 523609 490840.6 556377.4

结论:大家自己发挥

你可能感兴趣的:(4,学习笔记,R语言)