SAS判别分析(Bayes准则和proc discrim过程)

下表给出了两类公司的有关金融数据,一类是破产公司,表中数据是这些公司在破产前两年的四个年金融指标。一类是未破产公司和破产公司大约相同时期的四个相同的金融指标。这四个指标是

 各公司的数据如下表(表中最后一列的“0”表示破产公司,“1”表示非破产公司)

numberx1x2x3x4group
1-0.45-0.411.090.450
2-0.56-0.311.510.160
30.060.021.010.40
4-0.07-0.091.450.260
5-0.1-0.091.560.670
6-0.14-0.070.710.280
70.040.011.50.710
8-0.06-0.061.370.40
90.07-0.011.370.340
10-0.13-0.141.420.440
11-0.23-0.30.330.180
120.070.021.310.250
130.0102.150.70
14-0.28-0.231.190.660
150.150.051.880.270
160.370.111.990.380
17-0.08-0.081.510.420
180.050.031.680.950
190.0101.260.60
200.120.111.140.170
21-0.28-0.271.270.510
10.510.12.490.541
20.080.022.010.531
30.380.113.270.351
40.190.052.250.331
50.320.074.240.631
60.310.054.450.691
70.120.052.520.691
8-0.020.022.050.351
90.220.082.350.41
100.170.071.80.521
110.150.052.170.551
12-0.1-0.012.50.581
130.14-0.030.460.261
140.140.072.610.521
150.150.062.230.561
160.160.052.310.21
170.290.061.840.381
180.540.112.330.481
19-0.33-0.093.010.471
200.480.091.240.181
210.560.114.290.451
220.20.081.990.31
230.470.162.920.451
240.170.042.450.141
250.580.045.060.131

 实验代码:

proc import out=temp1                                                                                                                   
datafile="C:\Users\86166\Desktop\IT\SAS实验\实验9\1.xls"                                                                                
DBMS=EXCEL2000 replace;                                                                                                                 
run;   

/*1、2、3*/ 
proc discrim data=temp1  wcov simple pool=no manova method=normal crosslisterr listerr;
class group;
var x1-x2;
priors equal;
run;
/*4*/
proc discrim data=temp1  pool=no manova method=normal crosslisterr listerr;
class group;
var x1-x2;
priors '0'=0.05 '1'=0.95;
run;
/*5*/ 
proc discrim data=temp1  pool=yes manova method=normal crosslisterr listerr;
class group;
var x1-x2;
priors equal;
run;
/*6*/
proc discrim data=temp1  wcov simple pool=no manova method=normal crosslisterr listerr;
class group;
var x1 x3;
priors equal;
run;
proc discrim data=temp1  pool=no manova method=normal crosslisterr listerr;
class group;
var x1 x3;
priors '0'=0.05 '1'=0.95;
run;

proc discrim data=temp1  wcov simple pool=no manova method=normal crosslisterr listerr;
class group;
var x1 x4;
priors equal;
run;
proc discrim data=temp1  pool=no manova method=normal crosslisterr listerr;
class group;
var x1 x4;
priors '0'=0.05 '1'=0.95;
run;
/*7*/ 
proc discrim data=temp1  wcov simple pool=no manova method=normal crosslisterr listerr;
class group;
var x1-x4;
priors equal;
run;
proc discrim data=temp1  pool=no manova method=normal crosslisterr listerr;
class group;
var x1-x4;
priors '0'=0.05 '1'=0.95;
run;

实验结果:——》判别分析代码图片结果和数据集

分析实验结果:

实验中存在的问题及解决的办法:

问题:怎么判定不同先验概率条件下得到的结果更可靠?

解决:目前直接用的是误判概率大小来比较

实验体会(结论、评价、感想与建议)

  1. simple获取均值等简单统计量,wcov获取组内协方差,pool=yes/no/test分别对应使用联合协方差矩阵,组内协方差矩阵,组内协方差矩阵的齐性检验。manova得到4个统计量,Wilks'lambda用来衡量组内平方和与总平方和之比Wilks'lambda值大,表示各个组的均值基本相等在判别分析中,只有组均值不等时,判别分析才有意义
  2. crosslisterr listerr分别采用最大后验概率,刀切法求误判概率,method=normal指定了总体是正态分布的,priors equal指定先验概率是相等,也可以按分类的内容指定不同类的先验概率。
  3. 当总体属于正态分布时,若总体之间的协方差矩阵不相等,则采用组内协方差矩阵,pool=no,method=normal,priors可以相等,也可以按频数或者特殊值指定;若总体之间的协方差矩阵相等,则采用联合协方差矩阵,pool=yes,method=normal,priors可以相等,也可以按频数或者特殊值指定。一般小样本优先推荐用联合协方差矩阵,先验概率一般指定相等。当总体不属于正态分布时method=npar,采用非参数法进行判别。
  4. 总体和每个类的均值向量可以由simple得到
    wcov得到组内协方差,也就是样本协方差
    pcov得到合并协方差,这两种协方差的对应的使用条件与pool关联
    pool为yes的时候采用合并协方差矩阵,意味着对应的总体协方差矩阵不相同
    为no的时候采用组内协方差矩阵,意味着对应的总体均服从协方差矩阵相等的正态总体
    为test的时候对组内协方差矩阵进行齐性的似然比检验修正,和slpool用来指定齐性检验水平,默认0.1
    method为normal表示类服从多元正态分布,为npar即不服从该分布采用非参数方法
    crosslisterr以交叉表的形式输出回判结果,用的是刀切法
    listerr由后验概率产生的回判错误信息,要求按距离准则得到判别结果
    priors为equal表示先验概率相等,为proportional表示先验概率等于样本频率,也可以指定分类标志的先验概率,但总和为1
    比较判别准则的好坏,看误判结果的Total选项,一般来说谁更小则谁的准则更好
  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我的思路很明确

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值