欢迎来到天天文库
浏览记录
ID:47725503
大小:139.69 KB
页数:15页
时间:2019-11-05
《R语言中地多元统计之判别分析报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、标准文案前言判别分析(discriminantanalysis)是多元统计分析中较为成熟的一种分类方法,它的核心思想是“分类与判断”,即根据已知类别的样本所提供的信息,总结出分类的规律性,并建立好判别公式和判别准则,在此基础上,新的样本点将按照此准则判断其所属类型。例如,根据一年甚至更长时间的每天的湿度差及压差,我们可以建立一个用于判别是否会下雨的模型,当我们获取到某一天(建立模型以外的数据)的湿度差及压差后,使用已建立好的模型,就可以得出这一天是否会下雨的判断。根据判别的组数来区分,判别分析可以分为两组判别和多组判别。
2、接下来,我们将学习三种常见的判别分析方法,分别是:·距离判别·Bayes判别·Fisher判别一、距离判别基本理论假设存在两个总体和,另有为一个维的样本值,计算得到该样本到两个总体的距离和,如果大于大全标准文案,则认为样本属于总体,反之样本则属于总体;若等于,则该样本待判。这就是距离判别法的基本思想。在距离判别法中,最核心的问题在于距离的计算,一般情况下我们最常用的是欧式距离,但由于该方法在计算多个总体之间的距离时并不考虑方差的影响,而马氏距离不受指标量纲及指标间相关性的影响,弥补了欧式距离在这方面的缺点,其计算公式如下
3、:,为总体之间的协方差矩阵二、距离判别的R实现(训练样本)首先我们导入数据#读取SAS数据>library(sas7bdat)>data1<-read.sas7bdat('disl01.sas7bdat')#截取所需列数据,用于计算马氏距离>testdata<-data1[2:5]大全标准文案>head(testdata,3)X1X2X3X41-0.45-0.411.090.452-0.56-0.311.510.1630.060.021.010.40#计算列均值>colM<-colMeans(testdata)>colM
4、X1X2X3X40.096304348-0.0069565222.0334782610.431739130#计算矩阵的协方差>cov_test<-cov(testdata)>cov_testX1X2X3X4X10.0681838160.0277670530.14996870-0.002566763X20.0277670530.0153638650.058782510.001252367大全标准文案X30.1499686960.0587825121.013098740.028607150X4-0.0025667630.00
5、12523670.028607150.033912464#样本的马氏距离计算>distance<-mahalanobis(testdata,colM,cov_test)>head(distance,5)[1]12.72646511.2246811.6927021.3478852.369820这样,我们得到了距离判别中最关键的马氏距离值,在此基础上就可以进行进一步的判别分析了。不过我们介绍一个R的第三方包WMDB,该包的wmd()函数可以简化我们的距离判别过程,函数将输出样本的分类判别结果、错判的样本信息以及判别分析的准确
6、度。>library(WMDB)>head(data1,3)AX1X2X3X411-0.45-0.411.090.4521-0.56-0.311.510.16310.060.021.010.40#提取原始数据集的A列生成样品的已知类别大全标准文案>testdata_group<-data1$A#转换为因子变量,用于wmd()函数中>testdata_group<-as.factor(testdata_group)>wmd(testdata,testdata_group)12345678910111213141516171
7、8192021222324252627blong11111111111111221112111122228293031323334353637383940414243444546blong2222221222111112122[1]"numofwrongjudgement"[1]15162022232434383940414244[1]"samplesdividedto"[1]2221111111111[1]"samplesactuallybelongsto"[1]1112222222222Levels:12大全标准文案
8、[1]"percentofrightjudgement"[1]0.7173913由分析结果可知,根据已知分类的训练样品建立的判别规则,重新应用于训练样品后,出现了13个错判样品,拥有71.7%的准确度。三、距离判别的R实现(测试样本)接着,当我们获取到未分类的新样本数据时,使用wmd()函数,在训练样本的基础上进行这
此文档下载收益归作者所有