搜档网
当前位置:搜档网 › MATLAB 判别分析

MATLAB 判别分析

MATLAB 判别分析
MATLAB 判别分析

判别分析在生产、科学研究和日常生活中,经常会遇到对某一研究对象属于哪种情况作出判断。例如要根据这两天天气情况判断明天是否会下雨;医生要根据病人的体温、白血球数目及其它症状判断此病人是否会患某种疾病等等。从概率论的角度看,可把判别问题归结为如下模型。设共有n 个总体:

n ξξξ,,,21L

其中i ξ是m 维随机变量,其分布函数为

),,(1m i x x F L ,n i ,,2,1L =

而),,(1m x x L 是表征总体特性的m 个随机变量的取值。在判别分析中称这m 个变量为判别因子。现有一个新的样本点T

m x x x ),,(1L =,要判断此样本点属于哪一个总体。

Matlab 的统计工具箱提供了判别函数classify 。

函数的调用格式为:

[CLASS,ERR] = CLASSIFY(SAMPLE,TRAINING ,GROUP, TYPE)

其中SAMPLE 为未知待分类的样本矩阵,TRAINING 为已知分类的样本矩阵,它们有相同的列数m ,设待分类的样本点的个数,即SAMPLE 的行数为s ,已知样本点的个数,即TRAINING 的行数为t ,则GROUP 为t 维列向量,若TRAINING 的第i 行属于总体i ξ,则

GROUP 对应位置的元素可以记为i ,TYPE 为分类方法,缺省值为'linear',即线性分类,TYPE 还可取值'quadratic','mahalanobis'(mahalanobis 距离)。返回值CLASS 为s 维列向量,给出了SAMPLE 中样本的分类,ERR 给出了分类误判率的估计值。例已知8个乳房肿瘤病灶组织的样本,其中前3个为良性肿瘤,后5个为恶性肿瘤。数据为细胞核显微图像的10个量化特征:细胞核直径,质地,周长,面积,光滑度。根据已知样本对未知的三个样本进行分类。已知样本的数据为:13.54,14.36,87.46,566.3,0.09779

13.08,15.71,85.63,520,0.1075

9.504,12.44,60.34,273.9,0.1024

17.99,10.38,122.8,1001,0.1184

20.57,17.77,132.9,1326,0.08474

19.69,21.25,130,1203,0.1096

11.42,20.38,77.58,386.1,0.1425

20.29,14.34,135.1,1297,0.1003

-1-

待分类的数据为:

16.6,28.08,108.3,858.1,0.08455

20.6,29.33,140.1,1265,0.1178

7.76,24.54,47.92,181,0.05263

解:编写程序如下:

a=[13.54,14.36,87.46,566.3,0.09779

13.08,15.71,85.63,520,0.1075

9.504,12.44,60.34,273.9,0.1024

17.99,10.38,122.8,1001,0.1184

20.57,17.77,132.9,1326,0.08474

19.69,21.25,130,1203,0.1096

11.42,20.38,77.58,386.1,0.1425

20.29,14.34,135.1,1297,0.1003]

x=[16.6,28.08,108.3,858.1,0.08455

20.6,29.33,140.1,1265,0.1178

7.76,24.54,47.92,181,0.05263]

g=[ones(3,1);2*ones(5,1)];

[class,err]=classify(x,a,g)

-2-

matlab与多元统计分析

Matlab 与多元统计分析 胡云峰 安庆师范学院 第三章习题 3.1对某地区的6名2周岁男婴的身高、胸围、上半臂进行测量。得样本数据如表3.1所示。 假设男婴的测量数据X (a )(a=1,…,6)来自正态总体N 3(μ,∑) 的随机样本。根据以往的资料,该地区城市2周岁男婴的这三项的均值向量μ0=(90,58,16)’,试检验该地区农村男婴与城市男婴是否有相同的均值向量。 表3.1 某地区农村2周岁男婴的体格测量数据 1.预备知识 ∑未知时均值向量的检验: H 0:μ=μ0 H 1:μ≠μ0 H 0成立时 122)(0,)(1)(1,) ()'((1)))()'()(,1)(1)1(,) (1)P P X N n S W n n X n S X n X S X T p n n p T F P n p n p μμμμμ---∑--∑??∴----=-----+∴-- 当 2 (,)(1) n p T F p n p p n α-≥--或者22T T α≥拒绝0H 当 2 (,)(1) n p T F p n p p n α-<--或者22T T α<接受0H 这里2 (1) (, )p n T F p n p n p αα-= -- 2.根据预备知识用matlab 实现本例题 算样本协方差和均值 程序x=[78 60.6 16.5;76 58.1 12.5;92 63.2 14.5;81 59.0 14.0;81 60.8 15.5;84 59.5 14.0]; [n,p]=size(x); i=1:1:n; xjunzhi=(1/n)*sum(x(i,:));

MATLAB 判别分析

判别分析在生产、科学研究和日常生活中,经常会遇到对某一研究对象属于哪种情况作出判断。例如要根据这两天天气情况判断明天是否会下雨;医生要根据病人的体温、白血球数目及其它症状判断此病人是否会患某种疾病等等。从概率论的角度看,可把判别问题归结为如下模型。设共有n 个总体: n ξξξ,,,21L 其中i ξ是m 维随机变量,其分布函数为 ),,(1m i x x F L ,n i ,,2,1L = 而),,(1m x x L 是表征总体特性的m 个随机变量的取值。在判别分析中称这m 个变量为判别因子。现有一个新的样本点T m x x x ),,(1L =,要判断此样本点属于哪一个总体。 Matlab 的统计工具箱提供了判别函数classify 。 函数的调用格式为: [CLASS,ERR] = CLASSIFY(SAMPLE,TRAINING ,GROUP, TYPE) 其中SAMPLE 为未知待分类的样本矩阵,TRAINING 为已知分类的样本矩阵,它们有相同的列数m ,设待分类的样本点的个数,即SAMPLE 的行数为s ,已知样本点的个数,即TRAINING 的行数为t ,则GROUP 为t 维列向量,若TRAINING 的第i 行属于总体i ξ,则 GROUP 对应位置的元素可以记为i ,TYPE 为分类方法,缺省值为'linear',即线性分类,TYPE 还可取值'quadratic','mahalanobis'(mahalanobis 距离)。返回值CLASS 为s 维列向量,给出了SAMPLE 中样本的分类,ERR 给出了分类误判率的估计值。例已知8个乳房肿瘤病灶组织的样本,其中前3个为良性肿瘤,后5个为恶性肿瘤。数据为细胞核显微图像的10个量化特征:细胞核直径,质地,周长,面积,光滑度。根据已知样本对未知的三个样本进行分类。已知样本的数据为:13.54,14.36,87.46,566.3,0.09779 13.08,15.71,85.63,520,0.1075 9.504,12.44,60.34,273.9,0.1024 17.99,10.38,122.8,1001,0.1184 20.57,17.77,132.9,1326,0.08474 19.69,21.25,130,1203,0.1096 11.42,20.38,77.58,386.1,0.1425 20.29,14.34,135.1,1297,0.1003 -1-

matlab的判别分析

广西某锰矿床已知两种不同锰矿石各项评价指标如下表所列。现新发现湖润锰矿床,初步 Matlab执行代码: g1=[41.19 11.86 0.182 36.22;34.99 9.84 0.178 27.82;35.62 10.56 0.261

21.02]; g2=[23.21 5.46 0.11 21.17;25.05 6.84 0.134 27.3;19.23 6.61 0.137 26.61]; fprintf('做距离判别分析:\n') fprintf('在两个总体的协方差矩阵相等的假设下进行判别分析:\n') fprintf('两个样本的协方差矩阵s1,s2分别为\n') s1=cov(g1) s2=cov(g2) fprintf('因为两个总体的协方差矩阵相等,所以协方差的联合估计s为:\n') [m1,n2]=size(g1);[m2,n2]=size(g2); s=((m1-1)*s1+(m2-1)*s2)/(m1+m2-2) fprintf('两个总体的马氏平方距离为:\n') sn=inv(s); u1=mean(g1);u2=mean(g2); ucz=(u1-u2)'; dmj=(u1-u2)*sn*ucz fprintf('该值反映了两个总体的分离程度,线性函数的判别函数为:\n') syms x1;syms x2;syms x3;syms x4; x=[x1;x2;x3;x4]; u1z=u1';u2z=u2'; a1=(sn*u1z)';b1=(u1*sn*u1z)/2; a2=(sn*u2z)';b2=(u2*sn*u2z)/2; w1=vpa((a1*x-b1),4)

数模-化验结果判别及matlab程序

地贫患者的基因筛查问题 摘要 地中海贫血(简称“地贫”)是全球广为流行、危害极为严重的遗传性溶血性疾病,全世界至少有亿人携带地中海贫血的致病基因。医学上通过大人群的基因筛查来预防地贫患儿的出生。 本文应用统计学原理,对病人以及健康人的110个基因进行分析,采用Fisher判别模型建立判别标准和多元统计模型spss 软件进行筛选。 问题一,利用费希尔模型判别待测者是否患有地贫,以编号1~20地贫患者的样本,编号21~40健康人员的样本,分别作为模版建立模型,用mathlab软件求解得到待测组的患病者编号41~60个是待筛查人员的样本。 问题二,为确定“地贫”样本与“健康”样本在基因链上的区别。以及癌症样本中是否有子类。我们用1~20数据为标准化并确立相关系数矩阵,求出相关矩阵的特征值和特征向量,然后通过前m 个 主成分的累计贡献率满足 % 85 ) 1 /( ) 1 (≥ ∑ = ∑ =k i k k i k λ λ 来确定贡献率矩阵,从而得出各种基因的权 值,又利用初始特征值需大于 1,再运用逐步剔除法得出关键基因关键字:地贫患者的基因 Fisher判别筛查相关系数矩阵

1 问题重述 化验指标能够协助医生诊断。人们到医院就诊时,诊断就诊人员是否患肾炎时通常要化验人体内各种元素含量。表是确诊病例的化验结果,其中1-30号病例是已经确诊为肾炎病人的化验结果;31-60号病例是已经确定为健康人的结果。表是就诊人员的化验结果。 1.根据表中的数据,提出一种或多种简便的判别方法,判别属于患者或健康人的方 法,并检验你提出方法的正确性。 2.按照1提出的方法,判断表中的30名就诊人员的化验结果进行判别,判定他(她) 们是肾炎病人还是健康人。 3.能否根据表的数据特征,确定哪些指标是影响人们患肾炎的关键或主要因素,以 便减少化验的指标。 4.根据3的结果,重复2的工作。 5.对2和4的结果作进一步的分析。 2 问题分析 问题解决的关键是如何正确判断正常人与患者之间的差异,利用所给数据,可以选择用医学统计方法[1]中的判别分析法[2]进行分析。从题目给出的表中可以得出以下信息:1)表中分别给出正常人与患者各30组数据,每组数据各包含7种元素(Zn、Cu、Fe、Ca、Mg、K、Na)在人体中的含量。通过对这些数据进行分析,可以从中找出数据差异,根据判别法确定判别标准。利用所得判别标准,与就诊人员的化验结果比较可以判

MATLAB统计分析与应用:40个案例分析

MATLAB统计分析与应用:40个案例分析 ISBN:9787512400849 分类号:C819 /115 出版社:北京航空航天大学出版社 【内容简介】 本书从实际应用的角度出发,以大量的案例详细介绍了MA TLAB环境下的统计分析与应用。 本书主要内容包括:利用MA TLAB制作统计报告或报表;从文件中读取数据到MA TLAB;从MA TLAB中导出数据到文件;数据的平滑处理、标准化变换和极差归一化变换;生成一元和多元分布随机数;蒙特卡洛方法;参数估计与假设检验;Copula理论及应用实例;方差分析;基于回归分析的数据拟合;聚类分析;判别分析;主成分分析;因子分析;图像处理中的统计应用等。 本书可以作为高等院校本科生、研究生的统计学相关课程的教材或教学参考书,也可作为从事数据分析与数据管理的研究人员的参考用书。 【目录】 第1章利用MA TLAB生成Word和Excel文档 1.1 组件对象模型(COM) 1.1.1 什么是CoM 1.1.2 CoM接口 1.2 MA TLAB中的ActiveX控件接口技术 1.2.1 actxcontrol函数 1.2.2 actxcontrollist函数 1.2.3 actxcontrolselect函数 1.2.4 actxserver函数 1.2.5 利用MA TLAB调用COM对象 1.2.6 调用actxserver函数创建组件服务器 1.3 案例1:利用MA TLAB生成Word文档 1.3.1 调用actxserver函数创建Microsoft Word服务器 1.3.2 建立Word文本文档 1.3.3 插入表格 1.3.4 插入图片 1.3.5 保存文档 1.3.6 完整代码 1.4 案例2:利用MA TLAB生成Excel文档 1.4.1 调用actxserver函数创建Microsoft Excel服务器 1.4.2 新建Excel工作簿 1.4.3 获取工作表对象句柄 1.4.4 插入、复制、删除、移动和重命名工作表 1.4.5 页面设置 1.4.6 选取工作表区域 1.4.7 设置行高和列宽 1.4.8 合并单元格 1.4.9 边框设置 1.4.10 设置单元格对齐方式

matlab与多元统计分析

m a t l a b与多元统计分 析 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

Matlab 与多元统计分析 胡云峰 安庆师范学院 第三章习题 对某地区的6名2周岁男婴的身高、胸围、上半臂进行测量。得样本数据如表所示。假设男婴的测量数据X (a )(a=1,…,6)来自正态总体N 3(,∑) 的 随机样本。根据以往的资料,该地区城市2周岁男婴的这三项的均值向量0= (90,58,16)’,试检验该地区农村男婴与城市男婴是否有相同的均值向量。 表 某地区农村2周岁男婴的体格测量数据 解 1.预备知识 ∑未知时均值向量的检验: H 0:=0 H 1:≠0 H 0成立时 122)(0,)(1)(1,) ()'((1)))()'()(,1)(1)1(,) (1)P P X N n S W n n X n S X n X S X T p n n p T F P n p n p μμμμμ---∑--∑??∴----=-----+∴-- 当 2 (,)(1) n p T F p n p p n α-≥--或者22T T α≥拒绝0H 当 2 (,)(1) n p T F p n p p n α-<--或者22T T α<接受0H

这里2(1) (, )p n T F p n p n p αα-= -- 2.根据预备知识用matlab 实现本例题 算样本协方差和均值 程序x=[78 ;76 ;92 ;81 ;81 ;84 ]; [n,p]=size(x); i=1:1:n; xjunzhi=(1/n)*sum(x(i,:)); y=rand(p,n); for j=1:1:n y(:,j)= x(j,:)'-xjunzhi'; y=y; end A=zeros(p,p); for k=1:1:n; A=A+(y(:,k)*y(:,k)'); end xjunzhi=xjunzhi' S=((n-1)^(-1))*A 输出结果xjunzhi = S = 然后u=[90;58;16]; t2=n*(xjunzhi-u)'*(S^(-1))*(xjunzhi-u) f=((n-p)/(p*(n-1)))*t2 输出结果t2 = f = 所以21()'()T n X S X μμ-=--=

FISHER线性判别MATLAB实现

Fisher 线性判别上机实验报告 班级: 学号: 姓名: 一.算法描述 Fisher 线性判别分析的基本思想:选择一个投影方向(线性变换,线性组合),将高维问题降低到一维问题来解决,同时变换后的一维数据满足每一类内部的样本尽可能聚集在一起,不同类的样本相隔尽可能地远。 Fisher 线性判别分析,就就是通过给定的训练数据,确定投影方向W 与阈值w0, 即确定线性判别函数,然后根据这个线性判别函数,对测试数据进行测试,得到测试数据的类别。 线性判别函数的一般形式可表示成0)(w X W X g T += 其中 ????? ??=d x x X Λ1 ?????? ? ??=d w w w W Λ21 Fisher 选择投影方向W 的原则,即使原样本向量在该方向上的投影能兼顾类间分布尽可能分开,类内样本投影尽可能密集的要求。 如下为具体步骤: (1)W 的确定

样本类间离散度矩阵b S 在投影后的一维空间中,各类样本均值T i i m '= W m 样本类内离散度与总类内离散度 T T i i w w S ' = W S W S ' = W S W 样本类间离散度T b b S ' = W S W Fisher 准则函数为 max 22 212 21 ~~)~~()(S S m m W J F +-= (2)阈值的确定 w 0 就是个常数,称为阈值权,对于两类问题的线性分类器可以采用下属决策规 则: 令) ()()(2 1 x x x g g g -=则: 如果g(x)>0,则决策w x 1∈;如果g(x)<0,则决策w x 2∈;如果g(x)=0,则可将x 任意分到某一类,或拒绝。 (3)Fisher 线性判别的决策规则 Fisher 准则函数满足两个性质: 1、投影后,各类样本内部尽可能密集,即总类内离散度越小越好。 2、投影后,各类样本尽可能离得远,即样本类间离散度越大越好。 根据这个性质确定准则函数,根据使准则函数取得最大值,可求出 W :-1 w 12W = S (m - m ) 。 这就就是Fisher 判别准则下的最优投影方向。 最后得到决策规则 T 1212S (m m )(m m ) b =--

判别分析与数学建模

判别分析与数学建模 一、问题引入 首先,我们来考虑一下2000年“网易杯”全国大学生数学建模竞赛的A题是关于“DNA 序列分类”的问题: 人类基因组中的DNA全序列是由4个碱基A,T,C,G按一定顺序排成的长约30亿的序列,毫无疑问,这是一本记录着人类自身生老病死及遗传进化的全部信息的“天书”。但是,除了这四种碱基外,人们对它所包含的内容知之甚少,如何破译这部“天书”是二十一世纪最重要的任务之一。在这个目标中,研究DNA全序列具有什么结构,由这4个字符排成的看似随机的序列中隐藏着什么规律,又是解读这部天书的基础,是生物信息学(Bioinformatics)最重要的课题之一。 虽然人类对这部“天书”知之甚少,但也发现了DNA序列中的一些规律性和结构。例如,在全序列中有一些是用于编码蛋白质的序列片段,即由这4个字符组成的64种不同的3字符串,其中大多数用于编码构成蛋白质的20种氨基酸。又例如,在不用于编码蛋白质的序列片段中,A和T的含量特别多些,于是以某些碱基特别丰富作为特征去研究DNA序列的结构也取得了一些结果。此外,利用统计的方法还发现序列的某些片段之间具有相关性,等等。这些发现让人们相信,DNA序列中存在着局部的和全局性的结构,充分发掘序列的结构对理解DNA全序列是十分有意义的。 作为研究DNA序列的结构的尝试,试对以下序列进行分类: 问题:下面有20个已知类别的人工制造的序列(见附表),其中序列标号1—10 为A类,11-20为B类。请从中提取特征,构造分类方法,并用这些已知类别的序列,衡量你的方法是否足够好。然后用你认为满意的方法,对另外20个未标明类别的人工序列(标号21—40)进行分类,把结果用序号(按从小到大的顺序)标明它们的类别(无法分类的不写入): A类;B类 附表: Art-model-data 1.aggcacggaaaaacgggaataacggaggaggacttggcacggcattacacggaggacgaggtaaagg aggcttgtctacggccggaagtgaagggggatatgaccgcttgg 2.cggaggacaaacgggatggcggtattggaggtggcggactgttcggggaattattcggtttaaacgg gacaaggaaggcggctggaacaaccggacggtggcagcaaagga 3.gggacggatacggattctggccacggacggaaaggaggacacggcggacatacacggcggcaacgga cggaacggaggaaggagggcggcaatcggtacggaggcggcgga 4.atggataacggaaacaaaccagacaaacttcggtagaaatacagaagcttagatgcatatgtttttt aaataaaatttgtattattatggtatcataaaaaaaggttgcga 5.cggctggcggacaacggactggcggattccaaaaacggaggaggcggacggaggctacaccaccgtt tcggcggaaaggcggagggctggcaggaggctcattacggggag 6.atggaaaattttcggaaaggcggcaggcaggaggcaaaggcggaaaggaaggaaacggcggatattt cggaagtggatattaggagggcggaataaaggaacggcggcaca 7.atgggattattgaatggcggaggaagatccggaataaaatatggcggaaagaacttgttttcggaaa tggaaaaaggactaggaatcggcggcaggaaggatatggaggcg 8.atggccgatcggcttaggctggaaggaacaaataggcggaattaaggaaggcgttctcgcttttcga caaggaggcggaccataggaggcggattaggaacggttatgagg

FISHER线性判别MATLAB实现

Fisher 线性判别上机实验报告 班级: 学号: 姓名: 一.算法描述 Fisher 线性判别分析的基本思想:选择一个投影方向(线性变换,线性组合),将高维问题降低到一维问题来解决,同时变换后的一维数据满足每一类内部的样本尽可能聚集在一起,不同类的样本相隔尽可能地远。 Fisher 线性判别分析,就是通过给定的训练数据,确定投影方向W 和阈值w0, 即确定线性判别函数,然后根据这个线性判别函数,对测试数据进行测试,得到测试数据的类别。 线性判别函数的一般形式可表示成0)(w X W X g T += 其中 Fisher 选择投影方向W 的原则,即使原样本向量在该方向上的投影能兼顾类间分布尽可能分开,类内样本投影尽可能密集的要求。 如下为具体步骤: (1)W 的确定 w S 样本类间离散度矩阵b 在投影后的一维空间中,各类样本均值T i i m '= W m 样本类内离散度和总类内离散度 T T i i w w S ' = W S W S ' = W S W 样本类间离散度T b b S ' = W S W Fisher 准则函数为 max 22 212 21 ~~)~~()(S S m m W J F +-=

(2)阈值的确定 w 0 是个常数,称为阈值权,对于两类问题的线性分类器可以采用下属决策规则: 令) ()()(2 1 x x x g g g -=则: 如果g(x)>0,则决策w x 1∈;如果g(x)<0,则决策w x 2∈;如果g(x)=0,则可将x 任意分到某一类,或拒绝。 (3)Fisher 线性判别的决策规则 Fisher 准则函数满足两个性质: 1.投影后,各类样本内部尽可能密集,即总类内离散度越小越好。 2.投影后,各类样本尽可能离得远,即样本类间离散度越大越好。 根据这个性质确定准则函数,根据使准则函数取得最大值,可求出 W :-1w 12W = S (m - m ) 。 这就是Fisher 判别准则下的最优投影方向。 最后得到决策规则 若 P P m m w w w x x g T )( ) (211 2 log ))(2 1()(大于或小于+-=,则 {1 2w w x ∈ 对于某一个未知类别的样本向量x ,如果y=W T ·x>y0,则x ∈w1;否则x ∈w2。 二.数据描述 1.iris 数据 IRIS 数据集以鸢尾花的特征作为数据来源,数据集包含150个数据集,有4维,分为3 类,每类50个数据,每个数据包含4个属性,是在数据挖掘、数据分类中非常常用的测试集、训练集。

判别分析的MATLAB实现案例

%-------------------------------------------------------------------------- % 读取examp10_01.xls中数据,进行距离判别 %-------------------------------------------------------------------------- %********************************读取数据*********************************** % 读取文件examp10_01.xls的第1个工作表中C2:F51范围的数据,即全部样本数据,包括未判企业 sample = xlsread('examp10_01.xls','','C2:F51'); % 读取文件examp10_01.xls的第1个工作表中C2:F47范围的数据,即已知组别的样本数据,training = xlsread('examp10_01.xls','','C2:F47'); % 读取文件examp10_01.xls的第1个工作表中B2:B47范围的数据,即样本的分组信息数据,group = xlsread('examp10_01.xls','','B2:B47'); obs = [1 : 50]'; % 企业的编号 %**********************************距离判别********************************* % 距离判别,判别函数类型为mahalanobis,返回判别结果向量C和误判概率err [C,err] = classify(sample,training,group,'mahalanobis'); [obs, C] % 查看判别结果 err % 查看误判概率 %-------------------------------------------------------------------------- % 加载fisheriris.mat中数据,进行贝叶斯判别 %-------------------------------------------------------------------------- %********************************加载数据*********************************** load fisheriris % 把文件fisheriris.mat中数据导入MA TLAB工作空间 %**********************************查看数据********************************* head0 = {'Obj', 'x1', 'x2', 'x3', 'x4', 'Class'}; % 设置表头 [head0; num2cell([[1:150]', meas]), species] % 以元胞数组形式查看数据 %*********************************贝叶斯判别******************************** % 用meas和species作为训练样本,创建一个朴素贝叶斯分类器对象ObjBayes ObjBayes = NaiveBayes.fit(meas, species); % 利用所创建的朴素贝叶斯分类器对象对训练样本进行判别,返回判别结果pre0,pre0也是字符串元胞向量 pre0 = ObjBayes.predict(meas); % 利用confusionmat函数,并根据species和pre0创建混淆矩阵(包含总的分类信息的矩阵)[CLMat, order] = confusionmat(species, pre0); % 以元胞数组形式查看混淆矩阵 [[{'From/To'},order'];order, num2cell(CLMat)]

最新用matlab解析实际案例

Matlab大作业 专业:东凌经济管理学院 班级: 小组成员: 2012年5月

1成员分工: **(组长):第一题模型一建立,文档编写 ***:第一题模型二建立,文档编写 ***:第二题模型建立 2第一题 某小型超市出售某一品牌八宝粥,其需求量与消费者平均收入和商品价格密切相关,根据近期几个月每一个月的消费记录以及消费者收入市场调查,统计如下表。现在在一个地区新建一所同样的超市,出售同样一款八宝粥,该超市附近消费者平均收入为4000元,超市经理想知道八宝粥定价6元时,进多少货才会比较合适。 需求量100 75 80 70 50 65 90 100 110 60 收入4000 2400 4800 2000 1200 1600 5200 4400 5200 1200 价格 5 7 6 6 8 7 5 4 3 9 2.1 基本假设 1)假设该品牌八宝粥的超市库存量与需求量一致,不存在多余库存。 2)假设超市每个月就进一次货。 3)假设超市之前调查的数据充分准确。 4)假设在新超市,人群收入以及商品价格对需求量的影响与之前规律类似。 5)假设该品牌八宝粥的需求量除了与消费者收入和商品价格有关,其他因素影响很小,可以忽略不计。

2.2 符号设定 :消费者收入向量。)(income I :商品价格向量。)(price P :商品需求向量。)(t requiremen R 2.3 模型建立 2.3.1 模型分析: 因为有商品价格P 和消费者收入I 两个参数对商品需求量R 产生影响,所以我们选择采用回归模型解决这个问题。 模型一:多元二项式回归模型 222211210P I P I R βββββ++++= Matlab 程序: I=[4000 2400 4800 2000 1200 1600 5200 4400 5200 1200]; P=[5 7 6 6 8 7 5 4 3 9]; R=[100 75 80 70 50 65 90 100 110 60]; f=[I' P']; rstool(f,R','purequadratic')

matlab中主成分分析的函数

matlab中主成分分析的函数 1.princomp 功能:主成分分析 格式:PC=princomp(X) [PC,SCORE,latent,tsquare]=princomp(X) 说明:[PC,SCORE,latent,tsquare]=princomp(X)对数据矩阵X进行主成分分析,给出各主成分(PC)、所谓的Z-得分(SCORE)、X的方差矩阵的特征值(latent)和每个数据点的HotellingT2统计量(tsquare)。 2.pcacov 功能:运用协方差矩阵进行主成分分析 格式:PC=pcacov(X) [PC,latent,explained]=pcacov(X) 说明:[PC,latent,explained]=pcacov(X)通过协方差矩阵X进行主成分分析,返回主成分(PC)、协方差矩阵X的特征值(latent)和每个特征向量表征在观测量总方差中所占的百分数(explained)。 3.pcares 功能:主成分分析的残差 格式:residuals=pcares(X,ndim) 说明:pcares(X,ndim)返回保留X的ndim个主成分所获的残差。注意,ndim是一个标量,必须小于X 的列数。而且,X是数据矩阵,而不是协方差矩阵。 4.barttest 功能:主成分的巴特力特检验 格式:ndim=barttest(X,alpha) [ndim,prob,chisquare]=barttest(X,alpha) 说明:巴特力特检验是一种等方差性检验。ndim=barttest(X,alpha)是在显著性水平alpha下,给出满足数据矩阵X的非随机变量的n维模型,ndim即模型维数,它由一系列假设检验所确定,ndim=1表明数据X对应于每个主成分的方差是相同的;ndim=2表明数据X对应于第二成分及其余成分的方差是相同的。 =============== 主成分分析Matlab源码分析 function [pc, score, latent, tsquare] = princomp(x); % PRINCOMP Principal Component Analysis (centered and scaled data). % [PC, SCORE, LATENT, TSQUARE] = PRINCOMP(X) takes a data matrix X and

matlab与多元统计分析

Matlab 与多元统计分析 胡云峰 师学院 第三章习题 3.1对某地区的6名2周岁男婴的身高、胸围、上半臂进行测量。得样本数据如表3.1所示。 假设男婴的测量数据X (a )(a=1,…,6)来自正态总体N 3(μ,∑) 的随机样本。根据以往的资料,该地区城市2周岁男婴的这三项的均值向量μ0=(90,58,16)’,试检验该地区农村男婴与城市男婴是否有相同的均值向量。 1.预备知识 ∑未知时均值向量的检验: H 0:μ=μ0 H 1:μ≠μ0 H 0成立时 122)(0,)(1)(1,) ()'((1)))()'()(,1)(1)1(,) (1)P P X N n S W n n X n S X n X S X T p n n p T F P n p n p μμμμμ---∑--∑??∴----=-----+∴--:::: 当 2 (,)(1) n p T F p n p p n α-≥--或者22T T α≥拒绝0H 当 2 (,)(1) n p T F p n p p n α-<--或者22T T α<接受0H

这里2 (1) (, )p n T F p n p n p αα-= -- 2.根据预备知识用matlab 实现本例题 算样本协方差和均值 程序x=[78 60.6 16.5;76 58.1 12.5;92 63.2 14.5;81 59.0 14.0;81 60.8 15.5;84 59.5 14.0]; [n,p]=size(x); i=1:1:n; xjunzhi=(1/n)*sum(x(i,:)); y=rand(p,n); for j=1:1:n y(:,j)= x(j,:)'-xjunzhi'; y=y; end A=zeros(p,p); for k=1:1:n; A=A+(y(:,k)*y(:,k)'); end xjunzhi=xjunzhi' S=((n-1)^(-1))*A 输出结果xjunzhi = 82.0000 60.2000 14.5000 S = 31.6000 8.0400 0.5000 8.0400 3.1720 1.3100 0.5000 1.3100 1.900 然后u=[90;58;16]; t2=n*(xjunzhi-u)'*(S^(-1))*(xjunzhi-u) f=((n-p)/(p*(n-1)))*t2 输出结果t2 = 420.4447 f = 84.0889 所以2 1 ()'()T n X S X μμ-=--=420.4447 2 (1) n p F T p n -= -=84.0889 查表得F 3,3(0.05)=9.28<84.0889 F 3,3(0.01)=29.5<84.0889 因此在a=0.05或 a=0.01时拒绝0H 假设

FISHER线性判别MATLAB实现

Fisher线性判别上机实验报告 班级: 学号: 姓名:

一.算法描述 Fisher 线性判别分析的基本思想:选择一个投影方向(线性变换,线性组合),将高维问题降低到一维问题来解决,同时变换后的一维数据满足每一类内部的样本尽可能聚集在一起,不同类的样本相隔尽可能地远。 Fisher 线性判别分析,就是通过给定的训练数据,确定投影方向W 和阈值w0, 即确定线性判别函数,然后根据这个线性判别函数,对测试数据进行测试,得到测试数据的类别。 线性判别函数的一般形式可表示成0)(w X W X g T += 其中 ????? ??=d x x X Λ1 ?????? ? ??=d w w w W Λ21 Fisher 选择投影方向W 的原则,即使原样本向量在该方向上的投影能兼顾类间分布尽可能分开,类内样本投影尽可能密集的要求。 如下为具体步骤: (1)W 的确定 i w S T x S (x m )(x m ), 1,2 i i i i X i ∈= --=∑

12w S S S =+ 样本类间离散度矩阵b S 在投影后的一维空间中,各类样本均值T i i m '= W m 样本类内离散度和总类内离散度 T T i i w w S ' = W S W S ' = W S W 样本类间离散度T b b S ' = W S W Fisher 准则函数为 max 22 212 21 ~~)~~()(S S m m W J F +-= (2)阈值的确定 w 0 是个常数,称为阈值权,对于两类问题的线性分类器可以采用下属决策规则: 令) ()()(2 1 x x x g g g -=则: 如果g(x)>0,则决策w x 1∈;如果g(x)<0,则决策w x 2∈;如果g(x)=0,则可将x 任意分到某一类,或拒绝。 (3)Fisher 线性判别的决策规则 Fisher 准则函数满足两个性质: 1.投影后,各类样本内部尽可能密集,即总类内离散度越小越好。 2.投影后,各类样本尽可能离得远,即样本类间离散度越大越好。 根据这个性质确定准则函数,根据使准则函数取得最大值,可求出 W :-1 w 12W = S (m - m ) 。 这就是Fisher 判别准则下的最优投影方向。 最后得到决策规则 T 1212S (m m )(m m )b =--

MATLAB主成分分析

1.princomp 功能:主成分分析 格式:PC=princomp(X) [PC,SCORE,latent,tsquare]=princomp(X) 说明:[PC,SCORE,latent,tsquare]=princomp(X)对数据矩阵X进行主成分分析,给出各主成分(PC)、所谓的Z-得分(SCORE)、X的方差矩阵的特征值(latent)和每个数据点的HotellingT2统计量(tsquare)。 2.pcacov 功能:运用协方差矩阵进行主成分分析 格式:PC=pcacov(X) [PC,latent,explained]=pcacov(X) 说明:[PC,latent,explained]=pcacov(X)通过协方差矩阵X进行主成分分析,返回主成分(PC)、协方差矩阵X的特征值(latent)和每个特征向量表征在观测量总方差中所占的百分数(explained)。 3.pcares 功能:主成分分析的残差 格式:residuals=pcares(X,ndim) 说明:pcares(X,ndim)返回保留X的ndim个主成分所获的残差。注意,ndim 是一个标量,必须小于X的列数。而且,X是数据矩阵,而不是协方差矩阵。 4.barttest 功能:主成分的巴特力特检验 格式:ndim=barttest(X,alpha) [ndim,prob,chisquare]=barttest(X,alpha) 说明:巴特力特检验是一种等方差性检验。ndim=barttest(X,alpha)是在显著性水平alpha下,给出满足数据矩阵X的非随机变量的n维模型,ndim即模型维数,它由一系列假设检验所确定,ndim=1表明数据X对应于每个主成分的方差是相同的;ndim=2表明数据X对应于第二成分及其余成分的方差是相同的。 第一种方法:用matlab的各个函数组合得到的结果: clc; clear; X=[28 1 1100 5 0; 5 2 1200 1 2; 10 9 1010 2 0; 4 8 700 6 2;

相关主题