Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- SQL
- format
- sasviya
- 마케터
- 할당문
- 본페로니
- r
- 회귀분석
- 머신러닝
- 마케팅공부
- SAS반복문
- teachablemachine
- rstandard
- 마케팅조사
- 포지셔닝맵
- infile
- 캐글
- kaggle
- 마케팅
- 데이터청년캠퍼스
- SAS
- rstudent
- DIFFITS
- 모형진단
- 회귀분석실습
- DOEND
- Cook'sdistance
- 데이터결합
- 회귀모델
- 프로그래밍
Archives
- Today
- Total
통수정의 성장기
SAS_다양한 INPUT 명령문의 형식 본문
목차
1. 공백문자로 구분된 데이터 읽기
2. 고정 포맷으로 입력된 데이터 읽기
3. 특수 포맷으로 입력된 데이터 읽기
4. 하나의 개체가 여러줄에 입력되어 있는 데이터 읽기
5. 여러개의 개체가 한 줄에 연속해서 입력되어 있을때
6. 기본적인 INFILE 옵션
1. 공백문자로 구분된 데이터 읽기
DATA mysas.grade;
INPUT id name $ class $ score grade $;
CARDS;
2590 john Stat 80.3 A
3569 willy Math . B
7048 younghe . 30.6 C
9087 . Eng 100 A
. e.t . . .
;
RUN;
자유포맷에 의한 입력에서 지켜야 할 규칙
- 데이터의 자룟값들은 적어도 하나 이상의 공백문자에 의해 분리
- 다른 구분자를 사용한 데이터가 입력되어 있는 경우 : INFILE 명령문과 DLM옵션 사용해 구분자 지정해 줄것.
- 각 결측값은 한개의 마침표 . 로 표시
- 문자변수 자료값은 공백문자 포함하지 않아야, 길이가 최대 8자리.
- 문자 변수의 자료값이 8자리 넘으면 앞에서부터 8자리만을 데이터셋에 저장.
- LENGTH명령문을 사용 : 문자변수가 저장될 바이트 수를 미리 선언.
2. 고정 포맷으로 입력된 데이터 읽기
DATA mysas.grade1;
INPUT name $ 11-18 class $ 20-35 classid 1-4 score 36-40 grade $ 41;
CARDS;
259067048 김철수 Statistics 80.3A
356989087 박민호 Mathematics B
704842534 이영희 30.6C
908727844 English 100 A
424573465 남궁수지 Computer Science
;
RUN;
고정포맷으로 입력 : INPUT 변수 ($) 1-3
장점 :
- 값 사이에 공백문자 입력 필요X
- 문자변수가 공백 포함 가능 최대 32767자리
- 결측값 공백문자로 처리 가능
- 필요없는 변수에 대한 자룟값을 읽지 않을 수 있다.
- 읽을 열의 위치가 지정되므로 어떤 순서로 읽어도 무방하며, 같은 열을 반복하여 읽을 수 있다.
3. 특수 포맷으로 입력된 데이터 읽기( 🌟🌟🌟🌟🌟)
표준데이터 : 영문자 또는 한글, 숫자, 부호, 소수점 등으로 입력 된 데이터
비표준데이터 : 표준데이터 외에 다른 특수문자와 함께 입력되어있는 데이터
EX)10,000(콤마) $100(달러), 16진수로 입력된 자료, 날짜자료
→특별한 형식 가진 비표준 데이터의 경우 : 입력포맷 사용
입력포맷 : 문자형, 숫자형, 날짜형
DATA mysas.dept;
INPUT name $18. +1 hired DATE7. +1 salary 5.;
FORMAT hired DATE7. ;
CARDS;
Martin, Virginia 09aug80 34800
SIngleton, MaryAnn 24apr85 27900
Leighton, Maurice 16dec83 32600
Freuler, Carl 15feb88 29900
Cage, Merce 19oct82 39800
;
RUN;
DATA mysas.club;
INPUT idno name $ 6-19 @25 team $6. strtwght endwght;
CARDS;
1023 David Shaw red 189 165
1049 Amelia Serrano yellow 189 165
;
RUN;
열이동 : + @
+n: 옆으로 n칸 이동해라
@25 : 25번째 열로 이동해라
4. 하나의 개체가 여러줄에 입력되어 있는 데이터 읽기
DATA mysas.club;
INPUT idno name $ 6-19 / team $6. #3 strtwght endwght;
CARDS;
1023 David shaw
red
189 165
1049 Amelia Serrano
yellow
189 165
;
RUN;
행이동 : / #
/ : 다음줄의 첫열
#n : 포인터의 위치를 데이터의 매 n번째 행의 첫 열로 이동.
입력 포맷과 출력 포맷은 별도이다 !
5. 여러개의 개체가 한 줄에 연속해서 입력되어 있을때
: @@ 쭉 연달아 읽어라는 뜻
DATA mysas.double;
INPUT x y @@;
CARDS;
1 2 3 4
5 6 7
8 9 10
;
RUN;
6. 기본적인 INFILE 옵션
- FIRSTOBS=n : n번째 줄에서부터 자료를 읽기 시작하도록 지정
- MISSOVER : 자룟값을 읽지 못한 변수에 대해서 결측값으로 처리
- DLM=옵션 : 하나 이상의 문자 또는 특수기호 등을 자료값의 구분자로 지정(결측값 따로 표기 안하고 패스함.)
- DSD : ,콤마를 구분자로 사용, 근데 결측값 인지해서 .으로 나타냄. 인용부호 안에 있는 값만 나옴.
- EXPANDTABS : 구분자를 탭 문자로 지정
'SAS통계프로그래밍' 카테고리의 다른 글
SAS_데이터 가공 및 처리[OUT,RANK,STANDARD,SORT,PRINT,FORMAT,CONTENTS] (0) | 2022.06.21 |
---|---|
SAS_데이터의 결합 및 관리[SET,MERGE,DO-END] (0) | 2022.06.11 |
SAS_데이터 단계에서 사용되는 명령문들[선언문,조건문,변수,RETAIN,ARRAY] (0) | 2022.06.08 |
SAS _프로시저[MEANS/UNIVARIATE/PROC SORT/PLOT/CHART] (0) | 2022.06.07 |
Comments