728x90

SAS/IML에서 사용되는 각 연산자에 대한 예를 들어 설명함으로 이해하기 쉽도록 하였습니다.

 

/*----------------------------------------------------------*/

/* IML의 여러기능들을 실행한 프로그램 12_iml.sas */

/*---------------------------------------------------------*/

PROC IML;

a={ 1 2 3 4}; b={ 1 2 , 7 8}; c={ 3 4 , 5 6};

a2=2*a; /* 행렬 a의 각 원소를 2배 곱한다 */

bcsum=b+ 10*c; /* 행렬 c의 원소를 10배 한 것과 행렬 b를 더한 것 */

bcmul1=b*c; /* 행렬 b와 행렬 c를 곱한 것 (행렬연산) */

bcmul2=b#c; /* 행렬 b와 행렬 c를 곱한 것, (원소끼리) */

bcdiv=b/c; /* 행렬 b를 행렬 c의 원소끼리 나눈 것 */

bckron=b@c; /* Kronecker */

btrans=b`; /* 전치행렬, ‘ 는 키보드 왼쪽 제일 위에 있는 문자입니다 */

binv=inv(b); /* 역행렬 */

m=2; /* Scalar */

bm=b**m; /* 행렬 멱 */

bcside= b || c; /* 옆으로 붙이기 */

bcup= b // c; /* 아래로 붙이기 */

bcsmall= b >< c; /* 원소중에서 작은 값 */

bclarge= b <> c; /* 원소중에서 큰 값 */

bsum1=b[+,]; /* 행에 대하여 더하기 */

bsum2=b[,+]; /* 열에 대하여 더하기 */

b22=b[2,2]; /* 원소 2,2 에 해당되는 것 */

b2=b[,2]; /* 2열에 해당되는 것 */

b3=b[2,]; /* 2행에 해당되는 것 */

nrow=nrow(b);

ncol=ncol(b);

M1={1 1,0 1};

M2={1 1, 1 0};

M3=M1 & M2; /* 원소들의 논리곱 연산자 */

M4=M1 | M2; /* 원소들의 논리합 연산자 */

Q=4:7; /* Q=4 5 6 7 */

PRINT a, b, c, a2, bcsum, bcmul1, bcmul2, bckron,btrans, binv,bm,

bcside,bcup, 28 bcsmall,

PRINT m1,m2,m3,m4,q,nrow,ncol;

QUIT;

'SAS, R, Python 일반 > 12. SAS_IML' 카테고리의 다른 글

(S1)제12강(1.1) SAS에서 R 실행하기  (0) 2021.01.19
12.0 SAS/IML 목차  (0) 2020.08.06
12.5 (2) SAS/IML 예제를 R로 하기  (0) 2020.07.10
12.3 SAS/IML 응용 - 회귀분석  (0) 2020.06.27
12.1 SAS/IML 이란?  (0) 2020.06.27

+ Recent posts