全网最快入门———R语言机器学习实战篇8《主成分分析》

简介: R 语言是为数学研究工作者设计的一种数学编程语言,主要用于统计分析、绘图、数据挖掘。 机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

R 语言是为数学研究工作者设计的一种数学编程语言,主要用于统计分析、绘图、数据挖掘。 机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

这节课讲主成分分析(PCA)

项目实操——主成分分析

主成分分析和因子分析都是用来探索和简化多变量复杂分析的方法。主成分分析,也简称为PCA,是一种数据降维技巧,它能将大量相关变量转化为一组很少的不相关变量,这些无关的变量成为主成分,主成分其实是对原始变量重新进行线性组合,将原先众多具有一定相关性的指标,重新组合为一组的新的相互独立的综合指标。

R中内置的printcomp()函数可以进行主成分分析,这里我们使用psych包进行分析

步骤

主成分分析与因子分析的步骤:

数据预处理、选择分析模型、判断要选择的主成分/因子数目、选择主成分/因子、旋转主成分/因子、解释结果、计算主成分或因子得分。

例子

这里我们使用USjudgeratings数据集进行举例分析:

选择需要的主成分数目

选择PCA分析,通过绘制碎石图选择需要的主成分数目:

fa.parallel(USJudgeRatings,fa="pc",n.iter=100)

用principle()函数进行主成分分

接下来使用principle()函数进行主成分分析,nfactors是主成分因子的数目,rotate是旋转角度,scores表示是否要计算主成分得分,默认为不需要:

pc<-principal(USJudgeRatings,nfactors=1,rotate="none",scores=FALSE)

结果

这就是PCA分析的结果,其中,pc1栏是指观测变量与主成分的相关系数,如果nfactors=2或者3,那么还会有pc2、pc3等主成分,h2栏指成分公因子的方差,是主成分对每个变量的方差解释度,u2一栏是成分唯一性,方差不能被主成分解释的比例,proportion var表示每个主成分对数据集的解释程度,这里可以看到第一主成分pc1解释了所有变量84%的方差,我们将score参数设置为true,就可以获得每个变量的得分

继续分析

接下来我们使用Harman23.cor数据集进行分析:

在这个数据集中,数据是由变量的相关系数组成而非原始的数据集,先进行筛选主成分因子,利用平行分析得出碎石图:

fa.parallel(Harman23.cor$cov,n.obs=302,fa="pc",n.iter=100)

只有两个x在y=1之上,所以选择两个主成分因子,接下来进行主成分的分析

下面介绍一下主成分的旋转(这里只展示代码,具体的统计学知识查看统计学书本以及R语言实战p303)

pc<-principal(Harman23.cor$cov,nfactors=2,rotate='Varimax')


目录
打赏
0
0
1
0
91
分享
相关文章
基于阿里云 Milvus + DeepSeek + PAI LangStudio 的低成本高精度 RAG 实战
阿里云向量检索服务Milvus版是一款全托管向量检索引擎,并确保与开源Milvus的完全兼容性,支持无缝迁移。它在开源版本的基础上增强了可扩展性,能提供大规模AI向量数据的相似性检索服务。凭借其开箱即用的特性、灵活的扩展能力和全链路监控告警,Milvus云服务成为多样化AI应用场景的理想选择,包括多模态搜索、检索增强生成(RAG)、搜索推荐、内容风险识别等。您还可以利用开源的Attu工具进行可视化操作,进一步促进应用的快速开发和部署。
R1类模型推理能力评测手把手实战
随着DeepSeek-R1模型的广泛应用,越来越多的开发者开始尝试复现类似的模型,以提升其推理能力。
R1类模型推理能力评测手把手实战
随着DeepSeek-R1模型的广泛应用,越来越多的开发者开始尝试复现类似的模型,以提升其推理能力。
基于TensorFlow的深度学习模型训练与优化实战
基于TensorFlow的深度学习模型训练与优化实战
167 3
机器学习实战:TensorFlow在图像识别中的应用探索
【10月更文挑战第28天】随着深度学习技术的发展,图像识别取得了显著进步。TensorFlow作为Google开源的机器学习框架,凭借其强大的功能和灵活的API,在图像识别任务中广泛应用。本文通过实战案例,探讨TensorFlow在图像识别中的优势与挑战,展示如何使用TensorFlow构建和训练卷积神经网络(CNN),并评估模型的性能。尽管面临学习曲线和资源消耗等挑战,TensorFlow仍展现出广阔的应用前景。
116 5
R语言是一种强大的编程语言,广泛应用于统计分析、数据可视化、机器学习等领域
R语言是一种广泛应用于统计分析、数据可视化及机器学习的强大编程语言。本文为初学者提供了一份使用R语言进行机器学习的入门指南,涵盖R语言简介、安装配置、基本操作、常用机器学习库介绍及实例演示,帮助读者快速掌握R语言在机器学习领域的应用。
193 3
R语言是一种强大的统计分析工具,广泛应用于数据分析和机器学习领域
【10月更文挑战第21天】R语言是一种强大的统计分析工具,广泛应用于数据分析和机器学习领域。本文将介绍R语言中的一些高级编程技巧,包括函数式编程、向量化运算、字符串处理、循环和条件语句、异常处理和性能优化等方面,以帮助读者更好地掌握R语言的编程技巧,提高数据分析的效率。
97 2
R语言从数据到决策:R语言在商业分析中的实践
【9月更文挑战第1天】R语言在商业分析中的应用广泛而深入,从数据收集、预处理、分析到预测模型构建和决策支持,R语言都提供了强大的工具和功能。通过学习和掌握R语言在商业分析中的实践应用,我们可以更好地利用数据驱动企业决策,提升企业的竞争力和盈利能力。未来,随着大数据和人工智能技术的不断发展,R语言在商业分析领域的应用将更加广泛和深入,为企业带来更多的机遇和挑战。

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等