看着心好痛,找到这个程序的时候,很开心,但是数据输入进去后,结果并没有如期出现啊?至于类直径是对的,聚类图也没有出现,求指教?
如下:
现在把胡良平教授的教材《面向问题的统计学3》中的范例奉上,仅供参考。
本例一个分类指标,多个分类指标也是可以的。
Data mxwttjxt10_1;
input x@@;
cards;
9.3 1.8 1.9 1.7 1.5 1.3 1.4 2.0 1.9 2.3 2.1
;
run;
proc iml;
use mxwttjxt10_1;
read all into matrix_a;
close mxwttjxt10_1;
n=nrow(matrix_a);
call symputx(“n”,nrow(matrix_a));
call symputx(“m”,ncol(matrix_a));
/一、产生直径矩阵/
D=j(n,n,0); /建立n行n列的矩阵,元素初值均为0,以用来存储类的直径/
do i=1 to n;
do j=1 to n;
if i<j then D[i,j]=.; /用以得到下三角矩阵形式的直径矩阵/
else do;
temsum=matrix_a[i:j,]; /选取第i行到第j行作为子矩阵/
temsum2=temsum-shape(temsum[:,],i-j+1,&m); /用子矩阵中各元素减去本列元素的均值,得到离均差/
D[i,j]=round(ssq(temsum2),0.001); /