본문 바로가기

프로그램이야기/SAS15

15.데이터 전처리를 위한 SAS명령어(4) 15.데이터 전처리를 위한 SAS명령어(4) 출처 : wikidocs.net/31049 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 5-4. IF구문을 활용한 칼럼 변환 (1)명령어 IF XXX=N THEN YYY+2;: 칼럼 XXX가 N이면 칼럼 YYY에 2를 더한 값을 출력합니다. IF XXX=N THEN DELETE;: 칼럼 XXX가 N이면 해당 행을 삭제합니다. IF XXX=N THEN NEW=‘새로운칼럼’;: 칼럼 XXX가 N이명 칼럼 NEW를 생성하고 ‘새로운칼럼’이라는 값이 나오도록 만듭니다. IF XXX=N THEN NEW=YYY+2; ELSE NEW=ZZZ+3;: 칼럼 XXX가 N이면 칼럼 YYY에 2를 더한 값을 출력하고 XXX가 N이 아닌 나머지 경우 ZZ.. 2020. 12. 7.
14.데이터 전처리를 위한 SAS명령어(3) 14.데이터 전처리를 위한 SAS명령어(3) 출처 : wikidocs.net/31047 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 5-3. 단순 IF구문 (1)명령어 IF XXX=N; : 숫자 칼럼 XXX가 N인 행들만 선택합니다. IF YYY=‘ZZ’; : 문자 칼럼 YYY가 ZZ인 행들만 선택합니다. IF PPP^=N; : 숫자 칼럼 PPP가 N이 아닌 행들만 선택합니다(^=). IF XXX=N AND YYY=‘ZZ’; : 칼럼 XXX가 N이고 칼럼 YYY가 ZZ인 행을 선택합니다(AND, OR). IF XXX IN (N1,N2); : 칼럼 XXX가 N1이거나 N2인 행을 선택합니다(IN, NOT IN). (2) 예제_1 아래 코드로 실행해 보았습니다. 새로운 테이블 T.. 2020. 12. 7.
13.데이터 전처리를 위한 SAS명령어(2) 13.데이터 전처리를 위한 SAS명령어(2) 출처 : wikidocs.net/31046 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 5-2. 수식을 활용한 계산 (1)명령어 YYY=XXX+N; : 칼럼 YYY를 숫자 칼럼 XXX에 숫자 N을 더한 변수로 정의합니다. YYY+N; : 숫자 칼럼 YYY에 숫자 N을 더합니다. (2) 예제_1 아래 코드로 실행해 보았습니다. 새로운 테이블 TEST명으로 생성합니다. 테이블 SASSHELP.CLASSS로 불러오되 칼럼 AGE2는 AGE에 1을 더한 값입니다. (2) 예제_2 아래 코드로 실행해 보았습니다. 새로운 테이블 TEST명으로 생성합니다. 테이블 SASSHELP.CLASSS로 불러오되 칼럼 AGE2는 AGE에 1을 더한 값입니.. 2020. 12. 3.
12.데이터 전처리를 위한 SAS명령어(1) 12.데이터 전처리를 위한 SAS명령어(1) 출처 : wikidocs.net/31045 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 5-1. KEEP과 DROP (1)명령어 DATA XXX: 새로운 테이블 XXX를 생성합니다 SET YYY: 기존 테이블 YYY를 불러옵니다. KEEP ZZZ: 칼럼 ZZZ를 테이블에서 유지합니다. DROP PPP: 칼럼 PPP를 테이블에서 버립니다. (2) 예제_1 아래 코드로 실행해 보았습니다. 새로운 테이블 TEST명으로 생성합니다. 테이블 SASSHELP.CLASSS로 불러오되 칼럼 AGE와 NAME만 유지합니다. 2) 예제_2 아래 코드로 실행해 보았습니다. 새로운 테이블 TEST명으로 생성합니다. 테이블 SASSHELP.CLASSS로 .. 2020. 11. 27.
11.포맷(FORMAT)의 개념(3) 11.포맷(FORMAT)의 개념(3) 출처 : wikidocs.net/31042 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 4-3. 날짜 포맷 (1) 명령어 포맷 명령어 포맷 설명 포맷 예시 입력 값 포맷 출력값 DATE숫자. 숫자값을 날짜값으로 변경(일월년) DATE9. 3 4JAN1960 YYMMDD숫자. 숫자값을 날짜값으로 변경(연도-월-일) YYMMDD10. 3 1960-01-04 WEEKDATE. 숫자값을 날짜값으로 변경(요일, 월일, 연도) WEEKDATE. 3 Monday, January 4, 1960 WORDDATE. 숫자값을 날짜값으로 변경(월일, 연도) WORDDATE 3 January 4, 1960 NLDATE숫자. 숫자값을 날짜값으로 변경(연도 월 일).. 2020. 11. 24.
10.포맷(FORMAT)의 개념(2) 10.포맷(FORMAT)의 개념(2) 출처 : wikidocs.net/31041 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 4-2. 문자 포맷 (1) 명령어 포맷 명령어 포맷 설명 포맷 예시 입력 값 포맷 출력값 $숫자. 자리 수만큼 문자를 표시 $6. 라이올라 라이올 (2) 예제 아래 코드로 실행해 보았습니다. 새로운 테이블 TEST명으로 생성합니다. 테이블에 name(문자형) , age(숫자형)으로 입력합니다. 테이블에 CARDS 내용을 입력합니다. *포맷을 설정할 때 ‘.’을 입력해주시는 건 대단히 중요합니다. ‘6.′,‘7.’처럼 포맷 형식의 마지막에 ‘.’을 찍어주세요. 이는 모든 포맷에 동일한 사항입니다. 2020. 11. 24.
9.포맷(FORMAT)의 개념(1) 9.포맷(FORMAT)의 개념(1) 출처 : wikidocs.net/31040 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 4-1. 숫자 포맷 (1) 명령어 포맷 명령어 포맷 설명 포맷 예시 입력 값 포맷 출력값 숫자. 자리 수만큼 정수 숫자값을 표시 5. 324.5678 325 숫자.숫자 앞자리 숫자만큼 전체 길이를 표현하고, 뒷자리 숫자만큼 소수로 표현(만약 입력값 길이가 앞자리 숫자를 초과할 경우 소수점 이하 길이가 축소될 수 있음) 6.2 324.5678 324.57 BEST숫자. ‘.’을 포함하여 숫자 자리수만큼 수를 표현(최상의 숫자 표기법으로 알려져 있음) BEST5. 324.5678 324.6 COMMA숫자.숫자 3자리 숫자값마다 ‘,’를 표시 COMMA5. 3.. 2020. 11. 24.
8.데이터 생성법(3) 8.데이터 생성법(3) 출처 :wikidocs.net/31043 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 3-3. 테이블을 불러와서 새 테이블 생성하기 (1) 명령어 DATA XXX: 새로운 테이블 XXX를 생성합니다. SET YYY: 기존 테이블 YYY를 불러옵니다. (2) 예제 아래 코드로 실행해 보았습니다. 새로운 테이블 TEST명으로 생성합니다. 기존에 sashelp라이브러리에서 테이블 class를 불러옵니다. *TEST 앞에는 라이브러리 명이 없으므로 임시 라이브러리인 WORK에 배정됩니다. 2020. 11. 23.
7.데이터 생성법(2) 7.데이터 생성법(2) 출처 : wikidocs.net/31039 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 3-2. 외부 데이터를 불러와서 테이블 생성하기 (1) 명령어 INFILE 'C:\SAS_TEST\TEST.TXT'; : 'C:\SAS_TEST\TEST.TXT' 파일을 불러오는 명령어 입니다. INPUT YYY $ ZZZ : 문자 변수 YYY와 숫자 변수 ZZZ를 생성함. DLM=‘X’ : 데이터의 구분자는 ‘,’로 구성돼 있음을 입력함. (숫자 변수는 변수명만 입력하면 되고 문자 변수는 변수명 뒤에 한 칸을 띄우고 $를 붙임) (2) 예제 아래 코드로 실행해 보았습니다. 2020. 11. 23.
6.데이터 생성법(1) 6.데이터 생성법(1) 출처 : wikidocs.net/31034 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 3-1. 직접 테이블 생성법 (1) 명령어 DATA XXX: 테이블 XXX를 생성함 INPUT YYY $ ZZZ: 문자 변수 YYY와 숫자 변수 ZZZ를 생성함(숫자 변수는 변수명만 입력하면 되고 문자 변수는 변수명 뒤에 한 칸을 띄우고 $를 붙임) CARDS; XX 1: XX와 1을 각각의 변수에 입력함(CARDS는 DATALINES로 바꿀 수 있습니다.) RUN: SAS 명령어 종료 (2) 예제_1 아래 코드로 실행해 보았습니다. 테이블 TEST명으로 생성합니다. 변수명은 name(문자) age(숫자) sex(문자)로 생성합니다. 변수에 cards 다음 내용을 입.. 2020. 11. 23.
5. PROC 사용법(4) 5. PROC 사용법(4) *출처 :wikidocs.net/31033 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 2-4. PROC FREQ(빈도 조회) (1) 명령어 PROC FREQ: FREQ 프로시저를 시행합니다. DATA=XXX: XXX라는 데이터를 불러옵니다. TABLE YYY ZZZ: 변수YYY와 ZZZ를 조회합니다. (2) 예제(1) 아래 코드로 실행해 보았습니다. SASHELP라이브러리의 CLASS테이블을 불러와서 실행해 주세요. CALSS테이블에서 AGE와 NAME의 빈도를 실행해 주세요. (1) 명령어 TABLE AGE * NAME : AGE와 NAME의 2차원 표를 조회합니다. (2) 예제(2) 아래 코드로 실행해 보았습니다. SASHELP라이브러리의 CL.. 2020. 11. 23.
4.PROC 사용법(3) 4.PROC 사용법(3) *출처 : wikidocs.net/31032 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 2-3. PROC CONTENTS(테이블 속성 보기) (1)명령어 PROC CONTENTS: CONTENTS 프로시저를 시행합니다. (2) 예제-1 아래 코드로 실행해 보았습니다. SASHELP라이브러리의 CLASS테이블을 불러와서 실행해 주세요. CALSS테이블의 속성정보를 보여주세요. *SAS작업을 하면서 CONTENTS 명령어를 통해 주로 확인하는 속성을 다음과 같습니다. 1.데이터셋 이름: 테이블 이름과 라이브러리명을 확인합니다. 2.생성일: 테이블 생성 일자를 확인합니다. 3.관측치: 관측값이 몇 개의 행으로 이뤄져 있는지 확인합니다. 4.변수: 변수가 .. 2020. 11. 23.
3. PROC 사용법(2) 3. PROC 사용법(2) *출처 : wikidocs.net/31031 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 2-2. PROC PRINT(테이블 보여주기) (1)명령어 PROC PRINT: PRINT 프로시저를 시행합니다. DATA=XXX: XXX라는 데이터를 불러옵니다. VAR XXX: 지정된 변수 XXX를 불러옵니다. ID XXX: 지정된 변수를 기준값으로 활용합니다. 기준값이란, 해당 행의 대푯값으로 활용하겠다는 의미입니다. BY XXX: 지정된 변수를 그룹으로 만듭니다. (2) 예제-1 아래 코드로 실행해 보았습니다. SASHELP라이브러리의 CLASS테이블을 불러와서 실행해 주세요 (3) 예제-2 아래 코드로 실행해 보았습니다. SASHELP라이브러리의 CLA.. 2020. 11. 20.
2. PROC 사용법(1) 2. PROC 사용법(1) *출처 : wikidocs.net/31030 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net SAS에서 가장 많이 활용되는 간단한 명령어부터 공부하도록 하겠습니다. PROC SORT PROC PRINT PROC CONTENTS PROC FREQ 2-1. PROC SORT(순서대로 정렬하기) (1) 명령어 PROC SORT: SORT 프로시저를 시행합니다. DATA=XXX: XXX라는 데이터를 불러옵니다. OUT=YYY: 결과값을 YYY라는 테이블로 만듭니다. BY ZZZ: 변수ZZZ를 정렬합니다. DESCENDING: 내림차순으로 정렬합니다. (2) 예제 아래 코드로 실행해 보았습니다. SASHELP라이브러리에 있는 CLASS테이블을 불러오고 WORK라.. 2020. 11. 19.
1. SAS의 기초 1. SAS의 기초 *출처 : wikidocs.net/31021 1-1. 테이블과 라이브러리 - 무료프로그램인 SAS University Edition 기준으로 설명하도록 하겠습니다. - 개념정리 : 테이블은 '파일명' , 라이브러리는 '폴더명' - 라이브러리를 설정하지 않는다면 기본 라이브러리 'WORK' 라이브러리에 설정 우선 라이브러리를 만들어 주세요. 저는 'WI' 라고 했습니다. 코드문을 드레그 한다음 색반전이 되면 달리는 사람을 실행(F3) 하세요. 라이브러리가 할당되게 됩니다. 자 이제 본격적으로 명렁어를 하나씩 코드에 작성하도록 하겠습니다. 1) data xxx : xxx라는 이름의 테이블을 만들어주세요. 2) set yyy : yyy라는 이름의 테이블을 불러오세요. 3) run : SAS.. 2020. 11. 18.