超高维度分析,N*P的矩阵,N为样本个数,P为指标,N<<P

PCA:抓住对y对重要的影响因素

主要有三种:PCA,因子分析,回归方程+惩罚函数(如LASSO)

为了降维,用更少的变量解决问题,如果是二维的,那么就是找到一条线,要使这些点再线上的投影最大,投影最大,就是越分散,就考虑方差最大。

> conomy<-data.frame(
+ x1=c(149.3, 161.2, 171.5, 175.5, 180.8, 190.7,
+ 202.1, 212.4, 226.1, 231.9, 239.0),
+ x2=c(4.2, 4.1, 3.1, 3.1, 1.1, 2.2, 2.1, 5.6, 5.0, 5.1, 0.7),
+ x3=c(108.1, 114.8, 123.2, 126.9, 132.1, 137.7,
+ 146.0, 154.1, 162.3, 164.3, 167.6),
+ y=c(15.9, 16.4, 19.0, 19.1, 18.8, 20.4, 22.7,
+ 26.5, 28.1, 27.6, 26.3)
+ )
> #### 作线性回归
> lm.sol<-lm(y~x1+x2+x3, data=conomy)
> summary(lm.sol) Call:
lm(formula = y ~ x1 + x2 + x3, data = conomy) Residuals:
Min 1Q Median 3Q Max
-0.52367 -0.38953 0.05424 0.22644 0.78313 Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -10.12799 1.21216 -8.355 6.9e-05 ***
x1 -0.05140 0.07028 -0.731 0.488344
x2 0.58695 0.09462 6.203 0.000444 ***
x3 0.28685 0.10221 2.807 0.026277 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 0.4889 on 7 degrees of freedom
Multiple R-squared: 0.9919, Adjusted R-squared: 0.9884
F-statistic: 285.6 on 3 and 7 DF, p-value: 1.112e-07 > #### 作主成分分析
> conomy.pr<-princomp(~x1+x2+x3, data=conomy, cor=T)
> summary(conomy.pr, loadings=TRUE)
Importance of components:
Comp.1 Comp.2 Comp.3
Standard deviation 1.413915 0.9990767 0.0518737839
Proportion of Variance 0.666385 0.3327181 0.0008969632
Cumulative Proportion 0.666385 0.9991030 1.0000000000 Loadings:
Comp.1 Comp.2 Comp.3
x1 0.706 0.707
x2 -0.999
x3 0.707 -0.707
> #### 预测测样本主成分, 并作主成分分析
> pre<-predict(conomy.pr)
> conomy$z1<-pre[,1]
> conomy$z2<-pre[,2]
> lm.sol<-lm(y~z1+z2, data=conomy)
> summary(lm.sol) Call:
lm(formula = y ~ z1 + z2, data = conomy) Residuals:
Min 1Q Median 3Q Max
-0.89838 -0.26050 0.08435 0.35677 0.66863 Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 21.8909 0.1658 132.006 1.21e-14 ***
z1 2.9892 0.1173 25.486 6.02e-09 ***
z2 -0.8288 0.1660 -4.993 0.00106 **
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 0.55 on 8 degrees of freedom
Multiple R-squared: 0.9883, Adjusted R-squared: 0.9853
F-statistic: 337.2 on 2 and 8 DF, p-value: 1.888e-08 > #### 作变换, 得到原坐标下的关系表达式
> beta<-coef(lm.sol); A<-loadings(conomy.pr)
> x.bar<-conomy.pr$center; x.sd<-conomy.pr$scale
> coef<-(beta[2]*A[,1]+ beta[3]*A[,2])/x.sd
> beta0 <- beta[1]- sum(x.bar * coef)
> c(beta0, coef)
(Intercept) x1 x2 x3
-9.13010782 0.07277981 0.60922012 0.10625939

R语言与概率统计(六) 主成分分析 因子分析的更多相关文章

  1. R语言与概率统计(二) 假设检验

    > ####################5.2 > X<-c(159, 280, 101, 212, 224, 379, 179, 264, + 222, 362, 168, 2 ...

  2. R语言结合概率统计的体系分析---数字特征

    现在有一个人,如何对这个人怎么识别这个人?那么就对其存在的特征进行提取,比如,提取其身高,其相貌,其年龄,分析这些特征,从而确定了,这个人就是这个人,我们绝不会认错. 同理,对数据进行分析,也是提取出 ...

  3. R语言与概率统计(一) 描述性统计分析

      #查看已安装的包,查看已载入的包,查看包的介绍 ########例题3.1 #向量的输入方法 w<-c(75.0, 64.0, 47.4, 66.9, 62.2, 62.2, 58.7, 6 ...

  4. R语言与概率统计(五) 聚类分析

    #########################################0808聚类分析 X<-data.frame( x1=c(2959.19, 2459.77, 1495.63, ...

  5. R语言与概率统计(四) 判别分析(分类)

    Fisher就是找一个线L使得组内方差小,组间距离大.即找一个直线使得d最大. ####################################1.判别分析,线性判别:2.分层抽样 #inst ...

  6. R语言与概率统计(三) 多元统计分析(下)广义线性回归

    广义线性回归 > life<-data.frame( + X1=c(2.5, 173, 119, 10, 502, 4, 14.4, 2, 40, 6.6, + 21.4, 2.8, 2. ...

  7. R语言与概率统计(三) 多元统计分析(中)

    模型修正 #但是,回归分析通常很难一步到位,需要不断修正模型 ###############################6.9通过牙膏销量模型学习模型修正 toothpaste<-data. ...

  8. R语言与概率统计(三) 多元统计分析(上)

    > #############6.2一元线性回归分析 > x<-c(0.10,0.11,0.12,0.13,0.14,0.15,0.16,0.17,0.18,0.20,0.21,0. ...

  9. R语言与医学统计图形【1】par函数

    张铁军,陈兴栋等 著 R语言基础绘图系统 基础绘图包之高级绘图函数--par函数 基础绘图包并非指单独某个包,而是由几个R包联合起来的一个联盟,比如graphics.grDevices等. 掌握par ...

随机推荐

  1. 使用Mysql-magic获取Mysql账户密码

    版权声明:本文为博主原创文章,欢迎转载,转载请注明原文超链接https://www.cnblogs.com/zerotrust/p/10846530.html 本文仅限于技术讨论与分享,严禁用于非法用 ...

  2. java 中操作字符串都有哪些类?(未完成)它们之间有什么区别?(未完成)

    java 中操作字符串都有哪些类?(未完成)它们之间有什么区别?(未完成)

  3. F - Star SPOJ - STARSBC

    Fernando won a compass for his birthday, and now his favorite hobby is drawing stars: first, he marks ...

  4. map()函数浅析

    MapReduce的设计灵感来自于函数式编程,这里不打算提MapReduce,就拿python中的map()函数来学习一下. 文档中的介绍在这里: map(function, iterable, .. ...

  5. PAT乙级1042

    题目链接 https://pintia.cn/problem-sets/994805260223102976/problems/994805280817135616 题解 用数组count存储字母出现 ...

  6. jenkins"控制台输出"乱码问题解决

    今天在搭建Jenkins环境时,安装完Tomcat.Jenkins.创建项目进行构建后,在查看控制台输出时,结果中文全部显示乱码.然后呢,就是漫长的解决历程,最终呢,解决乱码问题的时间终于超过了环境搭 ...

  7. formData+ajax文件上传

    html代码: <form class="form-horizontal" enctype="multipart/form-data" method=&q ...

  8. Can't connect to MySQL server on xxx (10061)

    报错原因,数据库服务没有启动,在JDBC连接mysql数据库时会报错 解决方式,在服务中启用Mysql 备注:运行环境: windows10 x64 JDK 1.8.0_181 mysql-conne ...

  9. 解决Spring AOP Controller 不生效

    在spring-mvc.xml文件中,进行以下配置,就可以实现在Controller中, 方法一:最简单的,在spring-mvc.xml配置文件中,添加以下语句 spring-mvc.xml < ...

  10. gzip/bzip/xz/tar

    说明 归档和压缩并不是一回事,压缩是按照压缩算法将文件进行压缩,一般是直接压缩文件,不同的压缩工具的压缩比率是不一样的,同时还支持在压缩工具中指定压缩比,gz < bz2 <xz 压缩增大 ...