SAS를 많이 쓴 사람도 가끔 혼동을 하는것이 SAS Macro가 마치 SAS code의 일부라고 생각하고, SAS code를 잘못 사용하는 경우를 자주 봅니다. 특히 초보자들은 더욱 혼동이 심한것 같은데 아에 SAS Macro는 다른 computer program이라 생각하고 배우는 것이 훨씬 좋은 방법이라고 생각합니다. 단지 SAS Macro는 SAS를 더 효과적으로 쓰기 위한 방법중에 하나일 뿐이고 꼭 써야 하는것은 아닙니다.
우선 제일 중요한것이 SAS program을 만들었을때 SAS Macro를 같이 사용하면 SAS Macro code는 SAS code가 excute하기전에 제일 먼저 Excute합니다. 무슨 얘기이냐하면 Macro code가 먼저 일반 SAS code로 다 풀어놓은 다음에 SAS code가 excute합니다. 이런 excute하는 순서를 생각하고 이용하면 훨씬 쓰기도 좋고 debug하기도 쉽습니다.
예를 들어서 반복시키는 macro를 사용하시면 반복시키는 만큼 SAS code로 만든후에 SAS code가 돌아가는데, 이것을 무시하고 쓰면 절대로 macro를 제대로 쓸수없고 debug하는데 힘듭니다. 간단하지만 아~주 중요한 사실입니다.
그리고 SAS macro code, 변수, 값들은 다 character이란것도 중요하고 그리 많은 space를 차지 하지도 않아서 잘만쓰면 매우 유용한 tool입니다.
우연히 아래링크를 읽게 되었는데 제 생각에는 간단하게 썼지만 SAS macro의 모든 경우를 잘 나열해 놓은것 같아서 소개합니다. 나열해 놓은것들을 다 써보셨고 이해를 충분히 하시면 SAS macro에 대해서 안다고 해도 될정도입니다. 저는 16번은 추천하지 않고 17번을 추천하는데 좀더 콘트롤하기가 쉽고 debug하기가 쉬워서 그렇습니다. 특히 임상시험 프로젝트에서는 SAS macro를 자주 쓰기때문에 이 링크에 나열된것을 다 이해하시면 인터뷰때도 자신있게 macro를 잘 안다고 하실수 있습니다.
혹시 질문이 있으시면 댓글로 남겨주시면 제가 추가로 설명을 드리겠습니다.
*** 아래 링크의 회사와 저는 아무런 이해관계도 아니고 다만 좋은 글이라서 링크를 올립니다. ***
https://www.analyticsvidhya.com/blog/2021/01/quick-notes-on-sas-macros-for-efficient-usage/
첫댓글 감사합니다. 매크로를 만드는 일은 보통 biostatistician 이 아닌 sas programmers가 하지요?
보통 그렇죠
감사합니다 저도 공단이나 심평원 의료청구자료를 분석할 때 반복작업이 많아서 매크로 사용이 필수입니다
아에 macro programmer만 뽑는 회사도 있죠, 큰 회사들은. Gilead는 예전부터 따로 macro programmer들을 뽑았었는데 posting이 있군요. https://www.linkedin.com/jobs/search/?currentJobId=2407622505&pivotType=jymbii