SAS/IML是SAS提供的一个可以进行矩阵运算编程的工具,详细使用请参见有关资料或系统帮助(Help | Extended Help | SAS System Help: Main Menu | Help for SAS Products | SAS/IML)。下面给出SAS/IML常用命令: ● proc iml 调用SAS/IML矩阵运算编程的工具;
● 用+、-、曲周论坛*黑龙江省畜牧兽医局
符号表示矩阵的加减乘; ● 用||表示矩阵左右连接,用//表示矩阵上下连接;
● 用#表示用某个常数分别乘以矩阵中的每个元素3#x;
● 用/表示用某个常数分别去除矩阵中的每个元素x/3;
● 用##矩阵中的每个元素进行乘方运算x##2;
● 用g=inv(x)表示g是x的逆;
● 用金融写作e=eigval(x) 表示e是x特征值;
● 用d=eigvec(x) 表示d是x特征向量;
● 用h=det(x) 表示h是x行列式;
● 用t=trace(x) 表示t是x的迹;
● 用rank=round(trace(ginv(x)*x)) 表示rank是x的秩;
G = GINV(A) 表示求A的广义逆矩阵,如果G = GINV(A),那么AGA = A,GAG = G,理论热点面对面2011(AG)' = AG和(GA)' = GA;
● 用下面的程序表示求矩阵x的某个子矩阵
proc iml;
x={1 2 3,
4 5 6,
7 8 9};
m=x[2:3,1:3]; (矩阵m是x的第2亚当 斯密行到第3行和第1列到第3列构成的子矩阵)
print m;
● 用下面的程序求由几个子矩阵构成一个矩阵。
proc iml;
a={2 2,
4 4} ;
b={6 6,
8 8} ;
c=block(a,b);
print c;
● 用a=I(k)求k阶单位矩阵a=I(k)
● 用b=j(k)求每个元素均为“1”的k阶矩阵
。
用CORR过程计算相关系数和偏相关系数
相关系数可以反映变量两两之间的线性相关,偏相关系数反映在某些变量给定的条件下,两个变量之间的相关关系的密切程度。程序示例: data a;
input x1-x7@@;
cards;
数据行省略
;
proc corr cov nosimple noprob;
双城记 电视剧var x1-x7;
proc corr cov;
var x1;
with x3;
partial x7;
run;
proc corr:计算相关系数;
cov 给出协方差矩阵;
nosimple 不计算简单的描述统计量,省略时给出描述统计量;
noprob 不做相关系数检验,仅仅计算相关系数的值
var 变量名 分析变量的名字
with 变量名 关系变量
partial 变量名 条件变量
输出分为两个部分,第一部分是各变量的简单统计量,第二部分是三个变量两两之间的相关系数矩阵。