본문 바로가기

sas 데이터 합치기5

[SAS] sas에서 full join(합집합)에서 inner join(교집합)부분 빼는 방법(합집합-교집합) sas를 이용해 merge를 하는데 조건이 두개의 데이터셋 합집합 개념에서 교집합 부분을 빼는 방법을 알아보자. 아래의 그림을 보면 이해가 쉬울 것이다. 한마디로 hwi1 데이터셋과 hwi2 데이터셋의 초록색 부분을 추출해 내는 것이다. 1. DATA STEP 먼저 기본적인 데이터스텝에서 해보자. 두개의 데이터셋에서 기준이 되는 변수를 각각 proc sort를 이용해 정렬을 한다. 그뒤 아래의 그림에 코딩과정 처럼 진행하면 추출이 가능한데 if문에 있는 =^은 같지 않다라는 뜻이다. =^ 자리에 ne를 써도 같은 의미이다. ne는 not equal의 줄임말이다. 2. proc sql 위와 같은 결과값을 추출하지만 sort과정이 필요없기때문에 처리 속도가 빠른 sql문을 이용해 추출해보자. 아래 그림을 참.. 2014. 4. 25.
[SAS] sas 변수결합 ||, substr 함수 sas에서 2개 이상의 변수 값을 합칠 때 사용되는 함수 || 와 문자형 변수 값의 일부분을 추출하는 substr 함수에 대해서 알아보자. 위의 사진 참조 관측값들을 결합할 때 ||를 사용하여 값을 붙이는데 예를 들어 변수 var1에 abc가 있고 var2에 초콜렛 이 있다고 가정하자 x=var1||var2 를 적용하면 x값은 abc초콜렛 이라는 값을 가지게 되는 것이다. 주의해야 될 점은 두개의 값을 결합하는 과정에서 공백이 생길 수가 있다는 것이다. 그렇기 때문에 깔끔하게 공백없이 데이터를 결합하고 싶을때 문자형 변수의 공백을 제거해주는 compress함수를 같이 많이 사용한다. substr은 문자형 변수값의 일부분을 추출하는데 사용된다. 수치형 자료일 경우는 아무것도 추출되지 않으며, 문자형으로 변.. 2014. 3. 17.
[SAS] sas proc sql left join(왼쪽 테이블 기준 결합) 방법 sas에서 proc sql문을 이용해서 데이터를 결합하는 방법들을 알아보자. sas proc sql left join(왼쪽 테이블 기준 결합) 방법 - 두개의 데이터셋에 조인키의 같은 값이 있는 경우 왼쪽 테이블을 기준으로 매치시켜 합치기 [sas proc sql left join 문장구조 설명] [sas proc sql left join 예제 설명] [쉽게 코딩을 알아보자] proc sql; create table 결과데이터셋 as select 임의의명.*(모든변수사용), 임의의명2.*(모든변수사용) from 합칠데이터1 as 임의의명 left join 합칠데이터2 as 임의의명2 on 임의의명.합칠데이터1의 조인키변수=임의의명2.합칠데이터2의 조인키변수; run; www.sasbigdata.com 김진휘 2014. 3. 14.
[SAS] sas merge 가로병합 끝장내기(full, left, right, inner join방법 소개) sas에서 데이터 핸들링을 하면서 데이터들을 붙이고 나누고 하는 작업들을 자주 하게 된다. 가장 많이 사용되는 것이 세로병합인 set 구문과 가로병합 merge인데 오늘은 merge 사용법에 대해서 알아보도록 하자. 사진을 보고 이해하면 아주 쉽게 이해 할 수 있을 것이다. 아래 사진에 m이라는 데이터셋과 m1이라는 데이터셋이 있는데 변수 key를 가지고 merge(가로병합)를 해보자. (아래사진참조) 1. 두 데이터를 조인시킬 변수를 proc sort를 통해 정렬한다. 예제에서는 key변수를 정렬한다.(아래사진참조) 2. full join merge 방법 (아래사진참조) 풀조인 말그대로 조건 없이 통째로 가로로 붙여버리는 거다. 3. left join merge 방법(아래사진참조) 한마디로 두개의 데이.. 2014. 3. 4.
[SAS] sas를 이용해 두변수의 데이터 하나의 변수로 합치는 방법 각각 두개의 변수의 데이터들을 붙여서 하나의 변수 데이터로 만드는 방법입니다. 예를 들어 변수가 k1, k2, k3가 있습니다. k1의 데이터와 k2의 데이터를 붙여서 k라는 변수로 만들어 보겠습니다. 아래의 그림을 참조하시면 되겠습니다. jin이라는 데이터셋에는 k1,k2,k3 변수 세개가 있습니다. 그리고 아래의 사진과 같이 데이터들이 있는데 변수 k1과 변수 k2를 합쳐서 k라는 변수로 만들어 보겠습니다. retain은 변수들을 원하는 순서대로 나열해주는 명령어 입니다. keep은 원하는 변수만 나타내주는 명령어 입니다. compress는 공백을 제거해 주는 함수 입니다. k라는 변수를 생성하는데 k1과 k2 변수를 compress 시키고 ||라는 것이 두개의 데이터를 붙인다는 것입니다. || 이게.. 2013. 12. 3.