1、13届数学与应用数学专业毕业设计(论文) 目 录摘 要ABSTRACT前 言1第1章 主成分个数检验问题11.1 主成分分析相关概念11.11、主成分分析11.12、主成分分析基本思想11.13、主成分11.14、主成分的贡献率21.15、主成分个数的确定21.2检验部分理论21.21.巴特莱特检验统计量检验主成分个数21.22、累计贡献率法检验主成分个数4第2章 主成分个数确定及检验的R语言实现过程52.1.R语言基本概念和R统计软件基本操作52.11、R语言52.12、R的特点52.13、R的基本原理62.14、R基本操作62.14、用R写程序62.2.举例使用软件实现讨论过程72.21、
2、主成分分析个数确定SPSS82.22、巴特莱特检验统计量检验主成分个数R102.23、方差累计贡献率法R112.24、主成分分析个数确定SPSS142.25、巴特莱特检验统计量检验主成分个数R142.26、方差累计贡献率法R152.3 R语言程序包设计16总 结17致 谢18参考文献19摘 要主成分分析方法的诸多优点使得它成为一种应用十分广泛的统计分析方法,致使有些人盲目的使用主成分分析方法进行统计分析,而对其适用性,主成分个数的检验等问题不以讨论,这对于科学研究是极其不利的。本论文主要从假设检验方面对主成分分析方法中的主成分个数进行检验。在构造检验统计量的时候,使用的是巴特莱特检验统计量,经
3、过证明,该统计量服从卡方分布,进而使用卡方检验来检验原假设。论文最后部分是检验过程在R语言中的实现过程,主要是为了检验统计量,也是为了对R语言中不完善的卡方检验进行初步探索。关键词:主成分分析,卡方检验,R语言,SPSSABSTRACTPrincipal component analysis method is a lot of advantage makes it become a kind of statistical analysis methods, they are widely used in some people blindly using principal componen
4、t analysis method of statistical analysis, and on its applicability, the check of the number of principal components to discuss, it is extremely unfavorable for scientific research.This thesis mainly from the aspects of hypothesis test method of principal component analysis of the test number of pri
5、ncipal components. At the time of structure test statistics, using the bartlett test statistics, proven, and the statistic chi-square distributed, thus using chi-square test to test the null hypothesis. Paper is final part inspection process in the process of implementation in R language, mainly to
6、test statistics, but also to imperfect in R language, inspection carries on the preliminary exploration.KEY WORDS:principal component analysis, Chi-square test, R language ,SPSS前 言主成分分析方法是一种比较好的分析方法,但是,并不完善,尤其对主成分个数的确定,一直以来都没有非常客观的方法,所以,在论文中,我将就主成分个数的确定和检验,进行论证,试图找出一种比较客观,科学的验证主成分个数的方法,并使用统计专业软件R予以实
7、现。主成分个数的检验问题,还没有引起大家足够的重视,没有专门的人或机构对该问题进行专业性研究。就国内而言,少数学者、专家在主成分个数检验方面有类似的文章,其中最具说服力的是傅德印博士,他采用的是建立统计检验体系,对主成分分析方法进行一系列检验,其中就有对主成分个数的检验,其检验方法主要有,巴特莱特检验、累计贡献率法、特征值平均数法。在主成分的确定中,我们经常使用的一种比较权威的数学方法就是SPSS软件计算主成分个数。SPSS软件选取主成分的原理有两种供选择:一是基于原数据的相关矩阵计算得主成分,选取其方差大于相关矩阵的特征值平均数1的主成分用作主成分分析;另一个是学者自己设置需要的主成分个数,
8、这些方法都局限于主观的范畴,主观性强。本论文使用的检验方法有:1、构造巴特莱特检验统计量,使其服从卡方分布,联系卡方检验的知识,对原假设做出检验结论;2、对选取的主成分的累计方差贡献率进行判断,看是否达到一般性的答案要求。后者只是作为对前者实用性的主观判断。在本文中使用两个例题来对本论文的检验方法进行实际操作,以说明我们的检验方法是否达到要求,或者说,是否符合实际要求。首先我们通过SPSS软件计算出主成分个数,而后,使用R语言实现理论部分的检验过程。在该部分第三节,我们使用经过实验论证的检验方法,书写一个R语言自定义函数pcan(),即程序包,其功能就是在给定原始数据和预判的主成分个数的情况下
9、,我们使用pcan()函数检验预判的主成分个数是否正确,并且输出结果。本文主旨在书写R语言程序包,之前的理论检验部分如有纰漏,恳请大家改正,本人亦对程序包做相应修正。第1章 主成分个数检验问题1.1 主成分分析相关概念在讨论主成分个数的检验问题之前,首先我们来了解关于主成分分析方法的一些基本概念:1.11、主成分分析主成分的概念最初由Karl Parson在1901年提出的,1933年,Hotelling将主成分概念推广到随机变量。主成分分析就是将多个指标化为少数互相无关的综合指标的统计方法,也称主分量分析。主成分分析也是数学上降维的一种方法。主成分分析除了可以单独用来处理多指标且指标之间有一
10、定相关性的问题外,还可以与其他方法结合起来使用,例如与回归分析结合起来就是主成分回归,可它以克服回归问题中由于自变量之间的高度相关而产生的分析困难。1.12、主成分分析基本思想主成分分析的基本思想是设法将原来具有一定相关性的指标(比如p个指标),重新组合成一组新的相互无关的综合指标来代替原来指标。1.13、主成分主成分分析通常数学上的处理就是将原来p个指标作线性组合,作为新的综合指标,这些新的综合指标为主成分。主成分如果不加以限制,可以有很多,如果将选取的第一个线性组合即第一个综合指标记为F1,自然希望F1尽可能多的反映原来指标的信息,这里的“信息”经典的方法就是用F1的方差来表示,即Var(
11、F1)越大,表示F1包含的信息越多。因此,在所有的线性组合中所选取的F1应该是方差最大的,故称F1为第一主成分。如果第一主成分不足以代表原来p个指标的信息,在考虑选取F2即第二个线性组合,为了有效地反映原来信息,F1已有的信息就不需要再出现在F2中,用数学语言表达就是要求称F2为第二主成分。同理,可以构造出第三,四,第p个主成分。1.14、主成分的贡献率主成分的贡献率为,就是主成分的方差在全部方差中的比值。某个主成分的贡献率越大,表示该主成分综合原始数据的信息能力越强。1。1.15、主成分个数的确定在实际操作中,对于主成分个数的确定,一般使用以下方法:1、选取方差大于1的主成分;2、按照方差累
12、计贡献率,一般情况设定累计贡献率为85%;1.2检验部分理论当通过上述主成分的计算步骤,或者使用软件计算出主成分极其个数之后,我们就需要对确定的主成分个数进行检验,下面我们主要使用构建巴特莱特检验统计量的卡方检验法,来检验主成分的个数。1.21.巴特莱特检验统计量检验主成分个数1)前提条件设是p维随机向量,均值,协差阵,用X的p个向量,(即p个指标向量)作线性组合为:上述方程组要求:(1),且系数由下列原则决定:(2)与不相关;(3)F1是的一切线性组合中方差最大的,F2是与F1不相关的一切线性组合中方差最大的,Fp是与F1,F2,Fp-1都不相关的的一线性组合中方差最大的。(4)为的的特征根
13、,也是Fi的方差。2)提出假设设是p维随机向量,提出假设原假设 :备择假设 :不为0或不全为0.因为,特征根相等意味着数据在相应的p-q维空间上包含着相同的信息。若接受H0,则在q的基础上,再增加任何主成分就得把剩下的全部包括进去,因为后p-q个主成分含有相同的信息量。3)构造统计量在H0成立的条件下,可得Bartlet近似检验统计量:其中 算术平均 几何平均4)求拒绝域设显著性水平为,因为上述检验统计量服从自由度为的分布,所以可以查分布表得到临界值所以其拒绝域为:5)主成分个数假设检验结论若,则接受原假设:。即取前q个主成分已经足够描述当前的数据信息;若,则拒绝原假设,即应增加主成分个数。确
14、定,使用q代替q继续进行假设检验。1.22、累计贡献率法检验主成分个数对于假设检验得出的主成分个数q,是从主成分方差的数值是否相等或者说从每个主成分包含信息量是否重复来确定主成分个数的,用累计贡献值法是从主成分包含信息量大小方面,来判断所选取的q个主成分是否达到题目要求包含原始数据的信息量。方差贡献率描述了各个主成分在反映各个原始指标信息量方面的能力大小,所以将各个主成分的方差贡献率作为各个主成分的权重,实际上就是一种客观赋权。设累计贡献率为,根据题目要求的主成分累计贡献率需要达到的,判断,若,则符合题目要求;,则对确定的q重新考虑。2第2章 主成分个数确定及检验的R语言实现过程2.1.R语言
15、基本概念和R统计软件基本操作2.11、R语言R可以看作是贝尔实验室(Bell Laboratories)的Rick Becker,John Chambers和Allan Wilks开发的S语言的一种实现或形式。因此,R是一种软件也可以说是一种语言。S语言现在主要内涵在由Insightful公司经营的S-PLUS软件中,可以将R和S-PLUS视为S语言的两种形式。2.12、R的特点现在越来越多的人开始接触、学习和使用R,因为他有其显著的有点,主要包括:1)免费:尽管S-PlUS是非常优秀的统计分析软件,但你需要支付一笔费用,而R是一个免费的统计分析软件(环境);2)浮点运算功能强大:R可以作为一
16、台高级科学计算器,因为R同Matlab一样不需要编译就可以执行代码;3)不依赖于操作系统:R可以运行与UNIX,Linux,Windows和Macintosh的操作系统上,它们的安装文件以及安装说明都可以在CRAN(Comprehensive R Archive Network)社区下载;4)帮助功能完善:R嵌入了一个非常实用的帮助系统随软件所附的pdf帮助文件可以随时通过主菜单打开或打印。5)作图功能强大:其内嵌的作图函数能将产生的图片展示在一个独立的窗口中,并能将之保存为各种形式的文件;6)统计分析能力尤为突出:R内嵌了许多使用的统计分析函数,统计分析的结果也能被直接显示出来,一些中间结果
17、既可保存到专门的文件中,也可以直接用于进一步的分析。7)可移植性强: 8)较强大的拓展与开发能力:R是开发新的交互式数据分析方法一个非常好的工具。9)灵活而不死板:一般的软件旺旺会直接展示分析的结果,而R则将这些结果都存放在一个对象(object)里,所以常常在分析执行结束后并不现实任何结果。2.13、R的基本原理首先,同Matlab一样,R是一种编程语言,因为R是一种解释性语言,而不是变异语言,也就意味这输入的命令能够直接被执行,而不需要像C语言需要编译和连接等操作。其次,R的语法非常见大和直观。当R运行是,所有变量、数据、函数及结果都以对象的形势存入计算机的活动内存中,并冠有相应的名字代号
18、。再次,在R 中进行的所有操作都是针对存储在活动内存中的对象的,数据、结果或图标的输入与输出都是通过对计算机硬盘中的文件读写而实现。最后,所有能使用的R函数都被包含在一个库(Library)中,该库存放在R安装文件夹的Library目录下。这个目录下含有具有各种功能的包(packages),各个包也是按照目录的方式组织起来的。2.14、R基本操作1)数据的存储与读取:R软件中使用函数write.table()或save()在文件中写入一个对象,一般是写一个数据框,也可以是其他类型的对象(向量、矩阵、数组、列表等)。R可以用函数read.table(),scan()和read.fwf读取存储在文
19、本文件(ASCII)中的数据。2)R的绘图功能:这里不可能详细说明R软件在绘图方面的所有功能,主要是因为每个绘图函数都有大量的选项,使得图形的绘制十分的灵活多变。2.14、用R写程序一般情况下,一个R程序以文本格式保存,扩展名为.R。如果一个操作要重复许多次,我们最好使用R程序来实现。函数是大多数R程序实现的方式,而且这些函数的输入参数都放在一个括号里面。使用人员可以使用function()来编写自己的函数,并且函数和R里面的其他函数有一样的作用。函数是一系列操作的组合,形式为:函数名=function(变量1,变量2,)函数体.编写自己的函数可以更加灵活、有效、合理的使用R。32.2.举例使
20、用软件实现讨论过程例1:现在我们用一组全国30个省市自治区经济发展基本情况的八项指标为例,使用SPSS软件和R软件分别实现出主成分个数的确定和检验过程。样本原始数据如下:表2.1 全国三十个省市自治区经济发展的八项指标(单位:亿元)省份GDP居民消费水平固定资产投资职工平均工资货物周转量居民消费价格指数商品零售价格指数工业总产值北京1394.892502.00519.018144.00373.90117.30112.60843.43天津920.112720.00345.466501.00342.80115.20110.60582.51河北2849.521258.00704.874839.002
21、033.30115.20115.801234.85山西1092.481250.00290.904721.00717.30116.90115.60697.25内蒙古832.881387.00250.234134.00781.70117.50116.80419.39辽宁2793.372397.00387.994911.001371.10116.10114.001840.55吉林1129.201872.00320.454430.00497.40115.20114.20762.47黑龙江2014.532334.00435.734145.00824.80116.10114.301240.37上海2462
22、.575343.00996.489279.00207.40118.70113.001642.00江苏5155.251926.001434.955943.001025.50115.80114.302026.64浙江3524.792249.001006.396619.00754.40116.60113.50916.59安徽2003.581254.00474.004609.00908.30114.80112.70824.14福建2160.522320.00553.975857.00609.30115.20114.40433.67江西1205.111182.00282.844211.00411.701
23、16.90115.90571.84山东5002.341527.001229.555145.001196.60117.60114.202207.69河南3002.741034.00670.354344.001574.40116.50114.901367.92湖北2391.421527.00571.684685.00849.00120.00116.601220.72湖南2195.701408.00422.614797.001011.80119.00115.50843.83广东5381.722699.001639.838250.00656.50114.00111.601396.35广西1606.15
24、1314.00382.595105.00556.00118.40116.40554.97海南364.171814.00198.355340.00232.10113.50111.3064.33四川3534.001261.00822.544645.00902.30118.50117.001431.81贵州630.07942.00150.844475.00301.10121.40117.20324.72云南1206.681261.00334.005149.00310.40121.30118.10716.65西藏55.981110.0017.877382.004.20117.30114.905.57陕
25、西1000.031208.00300.274396.00500.90119.00117.00600.98甘肃553.351007.00114.815493.00507.00119.80116.50468.79青海165.311445.0047.765753.0061.60118.00116.30105.80宁夏169.751355.0061.985079.00121.80117.10115.30114.40新疆834.571469.00376.955348.00339.00119.70116.70428.76标准化后数据如下,表2.2 表2.1的标准化省份ZGDPZ居民消费水平Z固定资产投资Z
26、职工平均工资Z货物周转量Z居民消费价格指数Z商品零售价格指数Z工业总产值北京-0.356780.877680.01788-0.00610-0.635350.00658-1.215260.01472天津-0.678721.13071-0.39067-0.10874-0.70297-1.03029-2.26896-0.43653河北0.62956-0.566230.47935-0.212562.97255-1.030290.470650.69166山西-0.56184-0.57551-0.54849-0.219930.11128-0.190920.36528-0.23809内蒙古-0.73786-
27、0.41650-0.64946-0.256600.251300.105330.99750-0.71864辽宁0.591490.75581-0.30742-0.208061.53278-0.58592-0.477681.73918吉林-0.536940.14644-0.47512-0.23811-0.36683-1.03029-0.37231-0.12530黑龙江0.063380.68268-0.18889-0.255920.34501-0.58592-0.319620.70120上海0.367184.175221.203375.28228-0.997360.69784-1.004521.395
28、80江苏2.193020.209122.29203-0.143600.78137-0.73404-0.319622.06101浙江1.086770.584021.22798-0.101370.19194-0.33904-0.741100.14124安徽0.05595-0.57087-0.09387-0.226930.52655-1.22779-1.16258-0.01864福建0.162370.666430.10468-0.14897-0.12354-1.03029-0.26694-0.69394江西-0.48547-0.65444-0.56850-0.25179-0.55316-0.1909
29、20.52334-0.45498山东2.08933-0.254001.78205-0.193451.153380.15471-0.372312.37413河南0.73346-0.826220.39364-0.243481.97480-0.38842-0.003510.92179湖北0.31894-0.254000.14865-0.222180.397621.339710.892130.66722湖南0.18623-0.39212-0.22147-0.215190.751580.845960.312600.01541广东2.346581.106342.800720.00052-0.02092-1
30、.62280-1.74211-0.48416广西-0.21353-0.50123-0.32083-0.19594-0.239430.549710.78676-0.48416海南-1.055680.07912-0.77827-0.18126-0.94365-1.86967-1.90016-1.33269四川1.09369-0.562740.77150-0.224680.513510.599081.102871.03229贵州-0.87538-0.93301-0.89623-0.23530-0.793632.030961.20824-0.88236云南-0.48440-0.56274-0.4414
31、7-0.19320-0.773411.981591.68240-0.20454西藏-1.26466-0.73801-1.22638-0.05370-1.439160.00658-0.00351-1.43432陕西-0.62452-0.62426-0.52522-0.24024-0.359220.845961.10287-0.40459甘肃-0.92741-0.85756-0.98569-0.17171-0.345961.240960.83944-0.63320青海-1.19053-0.34918-1.15217-0.15546-1.314360.352210.73407-1.26097宁夏-1
32、.18751-0.45364-1.11686-0.19757-1.18347-0.092170.20723-1.24610新疆-0.73672-0.32132-0.33483-0.18076-0.711231.191590.94481-0.702432.21、主成分分析个数确定SPSSSPSS做主成分分析是选取主成分有两种方法,一是选取方差大于1的主成分;另一种是有计算者本人主观判断需要的主成分个数,并直接确定。在此,我们选用前一种更为客观的方法。现在根据SPSS操作习惯,在SPSS数据编辑器窗口的菜单栏依次选择,分析降维因子分析,得到如下结果:因子分析相关矩阵X1X2X3X4X5X6X7X8
33、相关X11.000.267.950.082.617-.273-.264.766X2.2671.000.427.810-.151-.235-.593.311X3.950.4271.000.249.430-.281-.361.660X4.082.810.2491.000-.209.115-.225.251X5.617-.151.430-.2091.000-.253.022.667X6-.273-.235-.281.115-.2531.000.763-.045X7-.264-.593-.361-.225.022.7631.000-.107X8.766.311.660.251.667-.045-.10
34、71.000公因子方差初始提取X11.000.917X21.000.940X31.000.830X41.000.903X51.000.785X61.000.925X71.000.924X81.000.847提取方法:主成份分析。成份矩阵a成份123X1.888.352.061X2.599-.730.223X3.897.126.096X4.368-.667.568X5.550.689-.087X6-.470.181.819X7-.561.542.561X8.786.340.338提取方法 :主成份。a. 已提取了 3 个成份。解释的总方差成份初始特征值提取平方和载入合计方差的 %累积 %合计方差
35、的 %累积 %13.54344.29144.2913.54344.29144.29122.03525.43469.7252.03525.43469.72531.49318.66488.3891.49318.66488.3894.5086.35494.7435.2142.68197.4236.1041.30698.7297.0881.09999.8288.014.172100.000提取方法:主成份分析。由输出结果成份矩阵,可得,由SPSS软件进行主成分分析计算出的主成分个数为3, 2.22、巴特莱特检验统计量检验主成分个数R在此,写出使用巴特莱特检验统计量检验主成分个数的R语言程序,每个语句都
36、有其注释: #先将上面原始数据表放入剪贴板read.table(clipboard)-data #读取剪贴板中的原始数据y=3 #输入由SPSS确定的主成分个数n=dim(data)2 #定义n为原始变量的个数sdata=scale(data) #对原始数据进行标准化操作p= dim(sdata)2 #定义所有主成分个数q= y #选取的主成分个数sdcor=cor(sdata) #求相关矩阵sdeig=eigen (sdcor) #求相关矩阵的特征值和特征向量g=prod (sdeig$values(q+1):p)(1/(p-q) #计算未选择的主成分方差的几何平均a=sum(sdeig$v
37、alues(q+1):p)/(p-q) #计算未选择的主成分方差的算术平均T= (n-(2*p+11)/6)*(p-q)*log(a/g) #计算巴特莱特近似检验统计量Tt= (p-q+2)*(p-q-1)/2 #计算卡方分布的自由度tR-qchisq(0.975,t) #计算卡方分布右临界值RL L&TR) print(The principal component number is );print(q) else print(The principal component number is Wrong)#判断统计量是否在拒绝域内且输出相应语句输出结果为:1 The principal
38、component number is 1 3由输出结果可知,该例的主成分个数应该是3。其R统计软件操作截图如下:2.23、方差累计贡献率法R我们用如下R语句来计算主成分的累计贡献率:data-data.frame(data)data-read.table(clipboard)sdata= scale(data) #对数据进行标准化处理sdcor=cor(sdata) #求相关矩阵sdeig= eigen(sdcor) #求相关矩阵的特征值和特征向量sum(sdeig$values1:q)/sum(sdeig$values) #求主成分的累积方差贡献率输出结果为:1 0.883886即该范例中
39、前三个主成分的贡献率为88.38% . 对比上述R统计软件得出的数据和SPSS的输出结果,发现,两者的方差累计贡献率完全一致。再次说明的是,SPSS软件进行主成分分析时,确定主成分的方法是完全按照选择主成分方差大于1的标准来选取的;而我在这里是使用R语言,对未选到的主成分进行假设检验分析,以证明他们的方差近似相同,即未选到的主成分包含的信息几乎相同,且被已选的主成分所代表,所以不需要增加主成分个数。在得到结果相同的情况下,我的方法是经过检验的,而SPSS的方法只有计算部分,并未经过检验。例2:为了全面分析机械类的企业的经济效益,我们选择了8个不同的利润指标,14家企业关于这8个指标的统计数据如
40、下:表2.3 我市14家机械类企业的部分指标变量净产值利润率(%)固定资产利润率(%)总产值利润率(%)销售收入利润率(%)产品成本利润率(%)物耗利润率(%)人均利润率(千元/人)流动资金利润率(%)企业序号xi1 xi2 xi2 xi3 xi5xi6xi7xi8140.424.77.26.18.38.72.4422022512.711.21112.920.23.5429.1313.23.33.94.34.45.50.5783.6422.36.75.63.767.40.1767.3534.311.87.17.188.91.72627.5635.612.516.416.722.829.33.01726.67227.89.910.212.617.60.84710.6848.413.410.99.910.913.91.77217.8940.619.119.81929.739.62.44935.81024.889.88.911.916.20.78913.71112.59.74.24.24.66.50.8743.9121.80.60.70.70.81.10.0561
版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。
Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1
陕公网安备 61072602000132号 违法和不良信息举报:0916-4228922