matlab与多元统计分析.docx

上传人:b****5 文档编号:30098019 上传时间:2023-08-05 格式:DOCX 页数:46 大小:55.54KB
下载 相关 举报
matlab与多元统计分析.docx_第1页
第1页 / 共46页
matlab与多元统计分析.docx_第2页
第2页 / 共46页
matlab与多元统计分析.docx_第3页
第3页 / 共46页
matlab与多元统计分析.docx_第4页
第4页 / 共46页
matlab与多元统计分析.docx_第5页
第5页 / 共46页
点击查看更多>>
下载资源
资源描述

matlab与多元统计分析.docx

《matlab与多元统计分析.docx》由会员分享,可在线阅读,更多相关《matlab与多元统计分析.docx(46页珍藏版)》请在冰豆网上搜索。

matlab与多元统计分析.docx

matlab与多元统计分析

CompanyDocumentnumber:

WTUT-WT88Y-W8BBGB-BWYTT-19998

 

matlab与多元统计分析

Matlab与多元统计分析

胡云峰安庆师范学院

第三章习题

对某地区的6名2周岁男婴的身高、胸围、上半臂进行测量。

得样本数据如表所示。

假设男婴的测量数据X(a)(a=1,…,6)来自正态总体N3(,∑)的随机样本。

根据以往的资料,该地区城市2周岁男婴的这三项的均值向量0=(90,58,16)’,试检验该地区农村男婴与城市男婴是否有相同的均值向量。

表某地区农村2周岁男婴的体格测量数据

男婴

身高(X1)cm

胸围身高(X2)cm

上半臂围身高(X3)cm

1

78

2

76

3

92

4

81

59

14

5

81

6

84

14

1.预备知识∑未知时均值向量的检验:

H0:

=0H1:

≠0

H0成立时

或者

拒绝

或者

接受

这里

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);

forj=1:

1:

n

y(:

j)=x(j,:

)'-xjunzhi';

y=y;

end

A=zeros(p,p);

fork=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=

所以

=

=

查表得F3,3=

因此在a=或a=时拒绝

假设

相应于表再给出该地区9名2周岁女婴的三项指标的测量数据如表所示。

假设女婴的测量数据Y(a)(a=1,…,9)来自正态总体N3(,∑)的随机样本。

试检验2周岁男婴与女婴的均值是有无显着差异

表某地区农村2周岁女婴体格测量数据

女婴

身高(X1)cm

胸围身高(X2)cm

上半臂围身高(X3)cm

1

80

14

2

75

15

3

78

15

4

75

13

5

79

14

6

78

7

75

58

8

64

11

9

80

1.预备知识

有共同未知协方差阵

成立的情况下且两样本独立

给定检验水平

,查

分布表,使

,可确定出临界值

,再用样本值计算出

,若

,则否定

,否则接受

2.根据预备知识用matlab实现本例题

由上一题知道

xjunzhi=

Sx=

类似程序

xjunzhi=[82;;];

Sx=[;;];

n=6;

y=[;15;7815;;79;78;75;64;80];

[m,p]=size(y);

i=1:

1:

m;

yjunzhi=(1/m)*sum(y(i,:

));

z=rand(p,m);

forj=1:

1:

m

z(:

j)=y(j,:

)'-yjunzhi';

z=z;

end

B=zeros(p,p);

fork=1:

1:

m;

B=B+(z(:

k)*z(:

k)');

end

Sy=((m-1)^(-1))*B;

yjunzhi=yjunzhi'

S=(1/(n+m-2))*((n-1)*Sx+(m-1)*Sy)

得到结果yjunzhi=

S=

然后

t=((n*m)/(n+m))*((xjunzhi-yjunzhi)')*(S^(-1))*(xjunzhi-yjunzhi)

F=((n+m-p-1)/(p*(n+m-2)))*t

输出结果t=

F=

查表得(3,11)=>(3,11)=>

因此在a=或a=时接受

假设

第四章习题

下表列举某年级任取12名学生的5门主课的期末考试成绩,试绘制学生序号为1、2、11、12的轮廓图、雷达图。

表学生学习成绩

序号

政治

语文

外语

数学

物理

1

99

94

93

100

100

2

99

88

96

99

97

3

100

98

81

96

100

4

93

88

88

99

96

5

100

91

72

96

78

6

90

78

82

75

97

7

75

73

88

97

89

8

93

84

83

68

88

9

87

73

60

76

84

10

95

82

90

62

39

11

76

72

43

67

78

12

85

75

50

34

37

解我们只需要数据如下

1

99

94

93

100

100

2

99

88

96

99

97

11

76

72

43

67

78

12

85

75

50

34

37

1利用matlab画轮廓图

程序x=1:

5;

y1=[999493100100];

y2=[9988969997];

y3=[7672436778];

y4=[8575503437];

plot(x,y1,'k-o','linewidth',1);

holdon;

plot(x,y2,'r--*','linewidth',2);

holdon;

plot(x,y3,'','linewidth',2);

holdon

plot(x,y4,'k--o','linewidth',2);

xlabel('学科');ylabel('分数');

legend('1','2','11','12');

set(gca,'xtick',[12345])

set(gca,'xticklabel',{'政治','语文','外语','数学','物理'})

输出结果

2利用matlab画雷达图

此图用matlab画起来比较复杂

首先我们修改polar函数

在命令窗口输入editpolar结果会出现polar函数的程序

其中我们把

%plotspokes

th=(1:

6)*2*pi/12;

cst=cos(th);snt=sin(th);

cs=[-cst;cst];

sn=[-snt;snt];

line(rmax*cs,rmax*sn,'linestyle',ls,'color',tc,'linewidth',1,...

'handlevisibility','off','parent',cax)

修改为

%plotspokes

th=(1:

3)*2*pi/6;

cst=cos(th);snt=sin(th);

cs=[-cst;cst];

sn=[-snt;snt];

line(rmax*cs,rmax*sn,'linestyle',ls,'color',tc,'linewidth',1,...

'handlevisibility','off','parent',cax)

再将后面的所有程序中的30改为72

然后另存为work中并命名为

然后输入程序

x=[0:

pi/:

2*pi];

y1=[99949310010099];

y2=[998896999799];

y3=[767243677876];

y4=[857550343785];

mypolar(x,y1,'b');

holdon;

mypolar(x,y2,'m');

holdon;

mypolar(x,y3,'g');

holdon;

mypolar(x,y4,'y')

legend('1','2','11','12');

输出结果

第五章聚类分析

习题.下表给出我国历年职工人数(单位:

万人),请用有序样品的fisher法聚类。

年份

全民所有制

集体所有制

1952

1580

23

1954

1881

121

1956

2423

554

1958

4532

662

1960

5044

925

1962

3303

1012

1964

3465

1136

1966

3939

1264

1968

4170

1334

1970

4792

1424

1972

5610

1524

1974

6007

1644

1976

6860

1813

1978

7451

2048

1980

8019

2425

解第一步数据标准化后计算直径D

程序:

X=[158023;1881121;2423554;4532662;5044925;33031012;34651136;...

39391264;41701334;47921424;56101524;60071644;68601813;...

74512048;80192425];

stdr=std(X);

[n,m]=size(X);

X=X./stdr(ones(n,1),:

);

[np]=size(X);

D=zeros(n,n);

fori=1:

1:

n;

forj=1:

1:

n;

ifi

t=i:

1:

j;

xgjunzhi=(1/(j-i+1))*sum(X(t,:

));

y=zeros(1,j-i+1);

fors=i:

1:

j

y(s)=(X(s,:

)-xgjunzhi)*(X(s,:

)-xgjunzhi)';

end

s=i:

1:

j;

D(i,j)=sum(y);

else

D(i,j)=0;

end

end

end

D=D'

输出结果矩阵太大,所以用excel处理了一下

D=

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

28

0

我们只看下三角所有元素,其它元素理解为空

第二步我们计算损失函数矩阵L

程序:

%设计一个把样品分为两类的程序,以及对应最后一类分割点

D=D';

L=zeros(n-1,n-1);

alp=zeros(n-1,n-1);

form=2:

n;

s=zeros(1,m-1);

forj=2:

m

s(1,j-1)=D(1,j-1)+D(j,m);

end

L(m-1,1)=min(s(1,1:

m-1));

forj=1:

m-1

ifL(m-1,1)==s(1,j);

alp(m-1,1)=j+1;

end

end

end

%分为k类

fork=3:

n;

form=k:

n

s=zeros(1,m-k+1);

forj=k:

m;

s(1,j-k+1)=L(j-2,k-2)+D(j,m);

end

L(m-1,k-1)=min(s(1,1:

m-k+1));

forj=1:

m-k+1

ifL(m-1,k-1)==s(1,j);

alp(m-1,k-1)=j+k-1;

end

end

end

end

输出结果这里由于表太大,用excel处理一下

L=

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

alp=

2

0

0

0

0

0

0

0

0

0

0

0

0

0

3

3

0

0

0

0

0

0

0

0

0

0

0

0

4

4

4

0

0

0

0

0

0

0

0

0

0

0

4

4

5

5

0

0

0

0

0

0

0

0

0

0

4

6

6

6

6

0

0

0

0

0

0

0

0

0

4

6

6

6

6

7

0

0

0

0

0

0

0

0

4

6

6

6

8

8

8

0

0

0

0

0

0

0

4

6

6

8

8

8

8

9

0

0

0

0

0

0

4

6

8

8

10

10

10

10

10

0

0

0

0

0

4

10

10

10

10

10

11

11

11

11

0

0

0

0

4

10

10

10

11

11

11

12

12

12

12

0

0

0

4

11

11

11

11

13

13

13

13

13

13

13

0

0

10

11

13

13

13

13

13

13

14

14

14

14

14

0

10

12

13

14

15

15

15

15

15

15

15

15

15

15

在这里解释一下这两个矩阵行表示分为k类,k从2到15;列表示样本数m,m从2到15

我们只看下三角所有元素,其它元素理解为空,接下来我们根据结果分析

如果我们要把样品分为三类,则第一个分割点为11,然后第二个分割点为6

得到

第一类:

{1952,1954,1956,1958,1960}

第二类:

{1962,1964,1966,1968,1970}

第三类:

{1972,1974,1976,1978,1980}

第六章判别分析

例对全国30个省市自治区1994年影响各地区经济增长差异的制度变量x1—经济增长率,x2—非国有化水平,x3—开放度,x4—市场化程度作贝叶斯判别分析。

类别

序号

地区

x1

x2

x3

x4

第一组

1

辽宁

2

河北

3

天津

4

北京

5

山东

6

上海

7

浙江

20

8

福建

9

广东

19

10

广西

16

11

海南

第二组

12

黑龙江

13

吉林

14

内蒙古

15

山西

16

河南

17

湖北

18

湖南

11

19

江西

18

20

甘肃

21

宁夏

22

四川

23

云南

24

贵州

84

25

青海

26

新疆

27

西藏

待判样品

28

江苏

29

安徽

30

陕西

解求均值及协方差的逆的估计值

程序

X1=[;;;...

;;;...

20;;19;...

16;];

X2=[;;;...

;;;...

11;18;;...

;;;...

84;;;...

];

X3=[;;];

[np]=size(X1);

[mp]=size(X2);

i=1:

1:

n;

x1junzhi=(1/n)*sum(X1(i,:

));

j=1:

1:

m;

x2junzhi=(1/m)*sum(X2(j,:

));

S1=cov(X1);

S2=cov(X2);

sigamani=(((n-1)*S1+(m-1)*S2)/(n+m-2))^(-1)

x1junzhi=x1junzhi'

x2junzhi=x2junzhi'

输出结果

sigamani=

x1junzhi=

x2junzhi=

接着计算判别函数

根据

按照判别原则,若

,则属于第一组,若

,则属于第二组

回判

程序

A=sigamani*x1junzhi;

B=sigamani*x2junzhi;

C=zeros(27,2);

C(:

1)=[1:

1:

27];

fori=1:

1:

11

f1=X1(i,:

)*;

f2=X1(i,:

)*;

iff1>f2

C(i,2)=1;

else

C(i,2)=2;

end

end

fori=1:

1:

16

f1=X2(i,:

)*;

f2=X2(i,:

)*;

iff1>f2

C(i+11,2)=1;

else

C(i+11,2)=2;

end

end

C

输出结果

C=

11

21

31

41

51

61

71

81

91

102

111

122

132

142

152

162

172

182

192

202

212

222

232

242

252

262

272

所以误判率为

%很小,所以判别有效

最后对待判样品进行判别

程序

D=zeros(3,2);

D(:

1)=[28:

1:

30];

forj=1:

1:

3

f1=X3(j,:

)*;

f2=X3(j,:

)*;

iff1>f2

D(j,2)=1;

else

D(j,2)=2;

end

end

D

输出结果

D=

281

292

302

第七章主成分分析

例对全国30个省市自治区经济发展基本情况的八项指标作主成分分析,原始数据如下:

表30个省市自治区的八项指标

省份

GDP

居民消

固定资

职工平

货物周

居民消费

商品零售

工业总

消费水平

产投资

均工资

转量

价格指数

价格指数

产值

X1

X2

X3

X4

X5

X6

X7

X8

北京

2505

8144

天津

2720

6501

河北

1258

4839

山西

1250

4721

内蒙古

1387

4134

辽宁

2397

4911

114

吉林

1872

4430

黑龙江

2334

4145

上海

5343

9279

113

江苏

1926

5934

浙江

2249

6619

安徽

1254

474

4609

福建

2320

5857

江西

1182

4211

山东

1527

5145

河南

1034

4344

湖北

1527

4685

849

120

湖南

1408

4797

119

广东

2699

8250

114

广西

1314

5150

556

海南

1814

5340

四川

3534

1261

4645

117

贵州

942

4475

云南

1261

334

5149

西藏

1110

7382

陕西

1208

4396

119

117

甘肃

1007

5493

507

青海

1445

5753

118

宁夏

1355

5079

新疆

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1