当前位置: 首页 > news >正文

张家港快速网站建设今日新闻最新头条10条内容

张家港快速网站建设,今日新闻最新头条10条内容,网址短链接在线生成免费,烟台开发区住房和建设局网站几个问题: pca可以用相关系数矩阵做吗?效果比协方差矩阵比怎么样?pca做完后变量和样本的新坐标怎么旋转获得?pca做不做scale和center对结果有影响吗?pca用因子分解和奇异值分解有啥区别?后者怎么获得变量和样本的新坐标?1. 用R全手工实现 PCA(对比 prcomp() ) 不借助包…

几个问题:

  • pca可以用相关系数矩阵做吗?效果比协方差矩阵比怎么样?
  • pca做完后变量和样本的新坐标怎么旋转获得?
  • pca做不做scale和center对结果有影响吗?
  • pca用因子分解和奇异值分解有啥区别?后者怎么获得变量和样本的新坐标?

1. 用R全手工实现 PCA(对比 prcomp() )

不借助包,按照 《机器学习实战》P246的伪代码进行操作.

1减去列平均数
2计算协方差矩阵
3计算协方差矩阵的特征值和特征向量
4将特征值从大到小排列
5保留最上面的N个特征值
6将数据转换到上述N个特征向量构建的新空间中。

例1: 针对iris数据集

head(iris)
df1=iris[,1:4]
#1) 减去平均值
df1=sweep(x=df1, MARGIN=2, STATS=apply(df1, 2, mean),FUN="-")
head(df1)
#2) 计算协方差矩阵
cor.df1=cov(df1)
#3) 计算协方差矩阵的特征值和特征向量
eigen.df1=eigen(cor.df1)
#4) 特征值默认降序
eigen.df1
#5) 保留最前面的几个特征值
#6) 原center后的坐标 * 旋转矩阵
coord.df1=as.matrix(df1) %*% eigen.df1$vectors
dim(coord.df1)
head(coord.df1)
# plot
coord.df1_=as.data.frame(coord.df1)
colnames(coord.df1_)=paste0("PC_", 1:4)
coord.df1_$type=iris$Species
library(ggplot2)
ggplot(coord.df1_, aes(PC_1, PC_2, color=type))+geom_point()# prcomp() 做PCA
pca.iris=prcomp(iris[,1:4])
pca.iris# 对比旋转矩阵
> pca.iris$rotation #prcomp()的计算结果PC1         PC2         PC3        PC4
Sepal.Length  0.36138659 -0.65658877  0.58202985  0.3154872
Sepal.Width  -0.08452251 -0.73016143 -0.59791083 -0.3197231
Petal.Length  0.85667061  0.17337266 -0.07623608 -0.4798390
Petal.Width   0.35828920  0.07548102 -0.54583143  0.7536574> eigen.df1$vectors #协方差矩阵的特征向量构成的矩阵[,1]        [,2]        [,3]       [,4]
[1,]  0.36138659 -0.65658877 -0.58202985  0.3154872
[2,] -0.08452251 -0.73016143  0.59791083 -0.3197231
[3,]  0.85667061  0.17337266  0.07623608 -0.4798390
[4,]  0.35828920  0.07548102  0.54583143  0.7536574# 对比方差
# 主成分的标准差,文档说是 协方差矩阵的特征值的平方根,虽然是通过SVD分解实现的
# square roots of the eigenvalues of the covariance/correlation matrix
# though the calculation is actually done with the singular values of the data matrix
> pca.iris$sdev
[1] 2.0562689 0.4926162 0.2796596 0.1543862> eigen.df1$values #特征根
[1] 4.22824171 0.24267075 0.07820950 0.02383509#开方后确实等于 pca.iris$sdev
> sqrt(eigen.df1$values)
[1] 2.0562689 0.4926162 0.2796596 0.1543862
http://www.bjxfkj.com.cn/article/106307.html

相关文章:

  • 做网站资金来源是什么营销方案设计思路
  • 衡阳百度网站建设可以免费投放广告的平台
  • 门户网站建设思路网络优化工资一般多少
  • 香港空间的网站会关吗宁波seo优化定制
  • 搜索引擎 网站地图十大教育培训机构排名
  • 好看云在线网站模板接广告的平台推荐
  • 网站日志解析关键词分析软件
  • 山西建设厅官方网站公示如何写软文赚钱
  • 500元做网站在线咨询
  • 两学一做网站是多少移动端关键词排名优化
  • wordpress+社区上海企业优化
  • 网站建设开发的目的营销方案案例范文
  • 视频 播放网站怎么做公司网络营销实施计划
  • 怎样在百度做网站表白怎么查看域名是一级还是二级域名
  • h网站建设刚出来的新产品怎么推
  • 上海平台网站建设平台十大接单推广平台
  • 哈尔滨网站建设制作价格永州网站seo
  • mvc5 网站开发seo如何优化的
  • 怎么做关于狗的网站什么时候友情链接
  • 网站备案ip外链火
  • 怎么做点击图片进网站今日实时热点新闻事件
  • 网站装修的代码怎么做建站平台哪个好
  • 网站开发流程 ppt广州网络seo优化
  • 企业在什么网站推广网站推广搜索
  • 网站注册赌博违法吗网站优化名词解释
  • 网站建设申报方案上海网络推广外包
  • 网站建设 贸易seo人员的相关薪资
  • 素材下载网站开发文档seo外包公司排名
  • 网站目录怎么做301跳转关键词在线查询
  • 温州市建设监理协会网站百度云搜索引擎入口