포스팅 목차
o TITLE 구문
1. 목 적
TITLE 구문은 SAS 출력에서 사용하기 위한 제목(TITLE)을 지정한다. TITLE 구문과 연관된 데이터 스텝 또는 RUN 그룹이 실행될 때에 TITLE 구문이 적용된다. 라인에 제목(TITLE)을 지정하면, TITLE을 취소하거나 다른 TITLE 구문을 지정하기 전까지 TITLE 구문은 그 이후의 모든 출력물에 적용된다. 특정 라인(n)에 대한 TITLE 구문을 지정하면 그 라인과 n보다 더 큰 숫자를 가진 모든 라인에 지정되어 있는 TITLE 구문이 취소된다.
2. 문 법
TITLE < 'text' | "text">; |
1) 인수 사용하지 않음
인수 없이 TITLE 구문을 사용하면 기존에 지정한 모든 제목을 삭제한다.
2) n
제목 라인이 출력되는 상대적 라인을 지정한다. 지정 가능한 범위는 1-10 이다. 가장 최상위 숫자(10)로 지정된 제목 라인은 하단 라인에 출력된다. n의 값을 생략하면, 기본값으로 1을 사용한다. 따라서, 첫 번째 라인에 출력하기 위한 제목은 TITLE 또는 TITLE1는 동일하다.
범위 : | 1-10 |
Tip : | 가장 최상위 숫자(10)로 지정된 제목 라인은 하단 라인에 출력된다. n의 값을 생략하면, 기본값으로 1을 사용한다. 그러므로, 첫 번째 제목 라인에 대하여는 TITLE 또는 TITLE1을 동일하게 사용 할 수 있다. |
Tip : | 텍스트 라인 사이에 공백 라인이 포함되도록 제목을 출력 할 수 있다. 예를 들어, TITLE 구문과 TITLE3 구문으로 제목을 지정하면, 2개의 텍스트 라인 사이에는 공백 라인이 존재 할 것이다. |
3) ods-format-options
ODS HTML, RTF, PRINTER의 각 대상에 대한 출력형식 옵션을 지정한다.
참고 : | ODS가 TITLE 구문을 표현하는 기본 방법은 현재 스타일에 대하여 시스템 제목(Title)과 관련된 스타일을 사용하는 것이다. 현재 스타일에 의해 제공되는 설정을 변경하기 위하여 TITLE 구문과 Ods-format-options을 함께 사용하라. 현재 스타일은 ODS 대상(destination)에 따라 달라진다. 현재 스타일 정의하는 방법에 대하여는 SAS Output Delivery System: User's Guide 에서 Concepts: Styles and the TEMPLATE Procedure 를 참조. |
Tip : | 옵션을 제목 텍스트 각 문자 또는 단어 앞에 위치시켜서 지정 할 수 있다. 예를 들어, 다음 문장은 title "Red, White, and Blue"를 서로 다른 색상으로 지정하는 방법이다. title color=red "Red," color=white "White, and" color=blue "Blue"; |
(1) BOLD
제목 텍스트의 폰트를 굵게 표시하도록 지정한다.
ODS 대상 : | HTML, RTF, PRINTER |
(2) COLOR=color (별치 : C)
제목 텍스트의 색상을 지정한다.
별칭 : | C |
ODS 대상 : | HTML, RTF, PRINTER |
주요기능 : | 예제3 : ODS(Output Delivery System)를 사용하여 TITLE 구문과 FOOTNOTE 구문에 대한 사용자 정의 지정하기 |
(3) BCOLOR=color
제목 블럭의 배경색을 지정한다.
ODS 대상 : | HTML, RTF, PRINTER |
(4) FONT=font-face (별칭 : F)
제목 텍스트에 사용할 폰트를 지정한다. 여러 폰트를 지정하면, 대상 장치는 시스템에 첫 번째로 설치된 폰트를 사용한다.
별칭 : | F |
ODS 대상 : | HTML, RTF, PRINTER |
(5) HEIGHT=size (별칭 : H)
폰트 크기를 지정한다.
별칭 : | H |
ODS 대상 : | HTML, RTF, PRINTER |
주요기능 : | 예제3 : ODS를 사용하여 TITLE 구문과 FOOTNOTE 구문에 대한 사용자 정의 지정하기 |
(6) ITALIC
제목 텍스트를 이태리체(기울임 형식)로 표시하도록 지정한다.
ODS 대상 : | HTML, RTF, PRINTER |
(7) JUSTIFY= CENTER | LEFT | RIGHT (별칭 : J)
행 정렬 방식을 지정한다.
- CENTER : 가운데 정렬 (별칭 : C)
- LEFT : 좌측 정렬 (별칭 : L)
- RIGHT : 우측 정렬 (별칭 : R)
별칭 : | J |
ODS 대상 : | HTML, RTF, PRINTER |
주요기능 : | 예제3 : ODS를 사용하여 TITLE 구문과 FOOTNOTE 구문에 대한 사용자 정의 지정하기 |
(8) LINK='url'
하이퍼링크를 지정한다. LINK= 에 대한 시각적 속성은 현재 스타일을 따른다.
ODS 대상 : | HTML, RTF, PRINTER |
Tip : | LINK= 에 대한 시각적 속성은 현재 스타일을 따른다. |
(9) UNDERLIN= 0 | 1 | 2 | 3 (별칭 : U)
이후에 지정한 제목 텍스트에 밑줄 표시 여부 및 형식을 지정한다. 0은 밑줄이 포함되지 않도록 지정하고, 1,2,3은 밑줄이 포함되도록 한다. ODS는 1,2,3 에 대하여 동일한 형태의 밑줄을 출력하고, SAS/GRAPH에서는 1,2,3의 순서로 값을 지정하면 점점 더 두꺼운 밑줄이 출력된다.
별칭 : | U |
Tip : | ODS는 1,2,3 에 대하여 같은 밑줄 형식을 생성한다. 그러나, SAS/GRAPH에서는 1,2,3의 순서로 값을 지정하면 점점 더 두꺼운 밑줄이 포함된다. |
ODS 대상 : | HTML, RTF, PRINTER |
4) 'text' | "text"
단일 인용 부호 또는 이중 인용부호 안에 텍스트를 작성한다.
PROC 스텝에 지정되는 제목에 BY 변수 값 (#BYVALn), BY 변수 이름 (#BYVARn), BY 라인(#BYLINE)을 삽입하여서 사용자 정의 제목을 지정할 수 있다. 제목 텍스트에서 BY 항목에 따라 제목의 내용 일부를 변경하기 위하여, 지정된 제목 텍스트 문자열에서 변경하기 원하는 위치에 아래 항목을 삽입한다.
Tip : | SAS 이전 버전과 호완을 위하여, SAS는 인용 부호 없이 일부 텍스트 작성을 허용한다. 그러나, 새로운 프로그램을 작성하거나 기존에 존재하는 프로그램을 수정할 때에, 텍스트를 인용부호 안에 작성하는 것이 좋다. |
Tip : | 텍스트의 문자열에서 단일(‘’) 또는 이중 인용 부호(“”)를 사이에 공백 없이 연속으로 사용한다면, SAS는 단일 인용 부호(‘) 또는 이중 인용 부호(“)를 단독으로 출력 할 것이다. |
Tip : | TITLE 텍스트에 자동 매크로 변수를 사용하면, 이중 인용부호 안에 TITLE 텍스트를 작성해야 한다. SAS 매크로는 텍스트가 이중 인용부호 안에 존재해야만 매크로 변수를 처리 할 것이다. |
관련사항 : | TITLE의 일부로 인용 부호를 포함하기 위한 상세 정보는 SAS Language Reference: Concepts 에서 “Expressions”를 참조 |
(1) BYVALn | #BYVAL(variable-name)
TITLE 구문의 텍스트 문자열에서 #BYVAL의 위치에 지정된 BY 변수의 현재 값으로 대체하여서, 그 값을 제목(Title)의 항목으로 출력한다.
PROC 스텝의 TITLE 구문에서 #BYVAL을 사용하는 경우에 다음 규칙을 따른다.
- #BYVAL에서 사용되는 변수를 BY 구문에 지정해야 한다.
- 지정된 TITLE 텍스트 문자열에서 BY 변수의 값에 따라 제목의 항목을 변경하여 출력하기 위한 위치에 #BYVAL을 삽입한다.
- #BYVAL 바로 뒤에 텍스트 문자열 종료를 나타내는 공백 또는 문자와 숫자를 제외한 구문 문자(예를 들어 인용부호)를 작성해야 한다.
- #BYVAL 바로 뒤에 구분 문자를 대신하여 다른 텍스트를 출력하기를 원한다면 매크로 변수처럼 후행 마침표를 작성하라.
다음 중의 하나를 선택하여 변수를 함께 지정한다.
- n
BY 구문에서 #BYVAL이 사용할 변수를 지정해야 한다. n의 값은 BY 구문에서 변수의 위치를 표시한다.
예제 : | #BYVAL2는 BY 구문에서 2번째 변수를 지정한다. |
- variable-name
BY 변수의 이름을 직접 지정한다.
Tip : | 변수 이름은 대소문자를 구분하지 않는다. |
예제 : | #BYVAL(YEAR)는 BY 구문에서 YEAR변수를 지정한다. |
- #BYVARn | #BYVAR(variable-name)
TITLE 구문의 텍스트 문자열에서 #BYVAR의 위치에 지정된 변수의 이름 또는 레이블로 대체하여서, 그 값을 제목(Title)에 출력한다.
PROC 스텝의 TITLE 구문에서 #BYVAR을 사용하는 경우에 다음 규칙을 따른다.
- #BYVAR에서 사용되는 변수를 BY 구문에 지정해야 한다.
- 지정된 TITLE 텍스트 문자열에서 BY 변수의 값을 변경하여 출력하기 위한 위치에 #BYVAR을 삽입한다.
- #BYVAR 바로 뒤에 텍스트 문자열 종료를 나타내는 공백 또는 문자와 숫자를 제외한 (예를 들어 인용부호) 구문 문자를 작성해야 한다.
- #BYVAR 바로 뒤에 구분 문자를 대신하여 다른 텍스트를 출력하기를 원한다면, 매크로 변수처럼 후행 마침표를 작성하라.
다음 중의 하나를 선택하여 변수를 함께 지정한다.
- n
BY 구문에서 #BYVAR이 사용 할 변수를 지정해야 한다. n의 값은 BY 구문에서 변수의 위치를 표시한다.
예제 : | #BYVAR2는 BY 구문에서 2번째 변수를 지정한다. |
- variable-name
BY 변수의 이름을 직접 지정한다.
Tip : | 변수 이름은 대소문자를 구분하지 않는다. |
예제 : | #BYVAR(SITES)는 BY 구문에서 SITES변수를 지정한다. |
(2) BYLINE
TITLE 구문의 텍스트 문자열에서 #BYLINE의 위치에 BY 구문에 지정된 해당 BY 변수의 전체 데이터 값으로 대체하여서, 그 값을 제목(Title)에 출력한다.
Tip : | OPTIONS 구문에서 NOBYLINE 사용하여 제어하지 않으면, #BYLINE은 페이지의 상단에 BY 라인을 포함한 출력물이 생성된다. |
관련사항 : | NOBYLINE에 관한 상세한 정보는 SAS System Options: Reference 에서 "BYLINE System Option" |
3. 상세 설명
데이터 스텝 또는 PROC 스텝에서 사용
TITLE 구문과 연관된 데이터 스텝 또는 RUN 그룹이 실행 될 때에 TITLE 구문이 적용된다. 라인에 제목(TITLE)을 지정하면, TITLE을 취소하거나 다른 TITLE 구문을 지정하기 전까지 TITLE 구문은 그 이후의 모든 출력물에 적용된다. 특정 라인(n)에 대한 TITLE 구문을 지정하면 그 라인과 n보다 더 큰 숫자를 가진 모든 라인에 지정되어 있는 TITLE 구문을 취소한다.
운영환경정보 : | 허용되는 최대 TITLE 길이는 운영환경과 LINESIZE = 시스템 옵션 값에 의존한다. |
4. 비교 사항
- TITLE 윈도우를 사용하여 제목(TITLE)을 지정 할 수 있다.
5. 관련 구문
구문명 | 구문내용 |
FOOTNOTE 구문 | 프로시져와 데이터 스텝 출력물의 하단에 10개 텍스트 라인(각주)을 작성한다. |
LINESIZE= 시스템 옵션 | |
TITLE 구문 | SAS 출력에서 사용하기 위한 제목(TITLE)을 지정한다. |
6. 예 제
예제1 : TITLE 구문 사용하기
다음 예제는 TITLE 구문에 대한 사용 방법을 보여준다.
- 다음 문장은 해당 라인과 해당 라인 이후의 모든 라인에서 제목(TITLE)을 제어한다.
SAS Statements |
titlen;
- 다음 코드는 TITLE 구문의 예제이다.
SAS Statements |
title 'First Draft';
title2 "Year's End Report";
title2 'Year''s End Report';
예제2 : BY 변수 값을 사용하여 제목(TILTE)을 사용자 정의로 지정하기
PROC 스텝에서 지정된 TITLE 구문에 BY 변수 값을 삽입하여 사용자 정의로 제목을 출력 할 수 있다.
다음 예제는 #BYVALn, #BYVARn, and #BYLINE 사용 방법을 보여준다.
SAS Statements |
title 'Quarterly Sales for #byval(site)';
title 'Annual Costs for #byvar2';
title 'Data Group #byline';
예제3 : ODS(Output Delivery System)를 사용하여 TITLE 구문과 FOOTNOTE 구문에 대한 사용자 정의 지정하기
ODS를 사용하여 TITLE과 FOOTNOTE 구문에 대하여 사용자 정의를 할 수 있다. 다음 예제는 색, 정렬, TITLE과 FOOTNOTE 텍스트 크기를 변경하기 위하여 PROC TEMPLATE를 사용하는 방법이다.
SAS Statements |
/*******************************************************************************************
* 다음 프로그램은 grain_production 데이터 세트와 $cntry 출력형식(format)을 생성한다. *
*******************************************************************************************/
data grain_production;
length Country $ 3 Type $ 5;
input Year country $ type $ Kilotons;
datalines;
1995 BRZ Wheat 1516
1995 BRZ Rice 11236
1995 BRZ Corn 36276
1995 CHN Wheat 102207
1995 CHN Rice 185226
1995 CHN Corn 112331
1995 IND Wheat 63007
1995 IND Rice 122372
1995 IND Corn 9800
1995 INS Wheat .
1995 INS Rice 49860
1995 INS Corn 8223
1995 USA Wheat 59494
1995 USA Rice 7888
1995 USA Corn 187300
2010 BRZ Wheat 3302
2010 BRZ Rice 10035
2010 BRZ Corn 31975
2010 CHN Wheat 109000
2010 CHN Rice 190100
2010 CHN Corn 119350
2010 IND Wheat 62620
2010 IND Rice 120012
2010 IND Corn 8660
2010 INS Wheat .
2010 INS Rice 51165
2010 INS Corn 8925
2010 USA Wheat 62099
2010 USA Rice 7771
2010 USA Corn 236064
;
run;
proc format;
value $cntry 'BRZ'='Brazil'
'CHN'='China'
'IND'='India'
'INS'='Indonesia'
'USA'='United States';
run;
/*******************************************************************************************
* 다음 PROC TEMPLATE 스텝은 데이터 스텝에서 사용하기 위한 TABLE1 테이블 정의를 생성한다 *
*******************************************************************************************/
proc template;
define table table1;
mvar sysdate9;
dynamic colhd;
classlevels=on;
define column char_var;
generic=on;
blank_dups=on;
header=colhd;
style=cellcontents;
end;
define column num_var;
generic=on;
header=colhd;
style=cellcontents;
end;
define footer table_footer;
end;
end;
run;
/*******************************************************************************************
* ODS HTML문장은 스타일 정의 D3D를 사용하여 HTLM 출력물을 생성한다. *
* *
* TITLE 구문은 첫 번째 TITLE에 대한 텍스트와 그것을 수정하기 위하여 *
* ODS가 사용하는 속성을 지정한다. *
* *
* J= 스타일 속성은 제목(TITLE)을 좌측 정렬한다. *
* COLOR= 스타일 속성은 TITLE 텍스트 "Leading Grain" 파란색으로 *
* "Producers in"를 초록색으로 변경한다. *
* *
* TITLE2 구문은 두 번째 TITLE에 대한 텍스트와 ODS가 사용하는 속성을 *
* 텍스트에 지정한다. *
* *
* J 스타일 속성은 TITLE을 중앙 정렬한다. *
* COLOR= 스타일 속성은 TITLE 텍스트 "2010"을 붉은색으로 변경한다. *
* HEIGHT= 속성은 "2010"에서 각각의 숫자 크기를 변경한다. *
* *
* FOOTNOTE 구문은 첫 번째 FOOTNOTE에 대한 텍스트와 ODS가 사용하는 *
* 속성을 텍스트에 지정한다. *
* *
* J= 스타일 속성은 FOOTNOTE를 좌측 정렬한다. *
* HEIGHT=20 스타일 속성은 폰트 크기를 20pt로 변경한다 *
* COLOR=스타일 속성은 "Prepared"를 붉은색으로, "ON"을 녹색으로 *
* 변경한다. *
* *
* *
* FOOTNOTE2 구문은 두 번째 FOOTNOTE에 대한 텍스트와 ODS가 사용하는 *
* 속성을 텍스트에 지정한다. *
*J 스타일 속성은 FOOTNOTE를 중앙 정렬 한다. *
* *
* COLOR=속성은 날짜 색상을 파란색으로 변경하고, HEIGHT=속성은 sysdate9 *
* 매크로에 의해 지정된 날짜의 폰트 크기를 변경한다. *
* *
*******************************************************************************************/
ods html body='newstyle-body.htm'
style=d3d;
title j=left
font= 'Times New Roman' color=blue bcolor=red "Leading Grain "
c=green bold italic "Producers in";
title2 j=center color=red underlin=1
height=28pt "2"
height=24pt "0"
height=20pt "1"
height=16pt "0";
footnote j=left height=20pt
color=red "Prepared "
c='#FF9900' "on";
footnote2 j=center color=blue
height=24pt "&sysdate9";
footnote3 link='http://support.sas.com' "SAS";
/*******************************************************************************************
* 다음 스텝은 HTML리포트를 생성하기 위하여 DATA스텝과 ODS를 사용한다. *
* 데이터 스텝에 대한 기본 테이블 정의를 사용하고, HTML 대상에 출력 객체를 작성한다. *
*******************************************************************************************/
data _null_;
set grain_production;
where type in ('Rice', 'Corn') and year=1996;
file print ods=(
template='table1'
columns=(
char_var=country(generic=on format=$cntry.
dynamic=(colhd='Country'))
char_var=type(generic dynamic=(colhd='Year'))
num_var=kilotons(generic=on format=comma12.
dynamic=(colhd='Kilotons'))
)
);
put _ods_;
run;
[출력 결과]
Results |
[SAS Statement] SAS 데이터 스텝 구문 사전 목록] |
SAS 함수(SAS Function) 리스트 링크 |
'SAS > SAS 구문사전' 카테고리의 다른 글
【SAS Statement】 WHERE 구문 (0) | 2022.02.07 |
---|---|
【SAS Statement】 UPDATE 구문 (0) | 2022.02.07 |
[SAS Statement] SYSECHO 구문 (0) | 2022.02.07 |
【SAS Statement】 Sum 구문 (0) | 2022.02.07 |
【SAS Statement】 STOP 구문 (0) | 2022.02.05 |
댓글