data result;
actual_dt = "23MAY16:07:21:00"dt;
visit_date = datepart(actual_dt);
visit_time = timepart(actual_dt);
format visit_date ddmmyy10. visit_time time8.; ***numeric format *** ;
run;
문자형태로 바꿀려면.. vstm = put(timepart(VSDTC1),time8.) ;
숫자(날짜) 와 숫자(시간)합치기(concatenating two separate fields (date and time) into one datetime )
: newdtm=dhms(date, 0,0,time);
문자를 숫자시간으로
data ae2 ; set ae1 ;
**start date ** ;
AESTDTC_RAW1 = input(AESTDTC_RAW, yymmdd10.) ;
format AESTDTC_RAW1 date10. ;
AESTTM1 = input(AESTTM, time8.) ;
sttm = dhms(AESTDTC_RAW1, 0,0, AESTTM1) ;
** End date ** ;
AEENDTC_RAW1 = input(AEENDTC_RAW, yymmdd10.) ;
format AEENDTC_RAW1 date10. ;
AEENTM1 = input(AEENTM, time8.) ;
edtm = dhms(AEENDTC_RAW1, 0,0, AEENTM1) ;
duration = (edtm - sttm)/24/60/2.5 ; /* */
RUN;
ata want; attrib newdate format=datetime25.; date="01jan2016"d; time=input("9:10:07",time8.); newdate=input(catx("T",put(date,date9.),put(time,time8.)),datetime.); if datepart(newdate)=date then chk1=1; if timepart(newdate)=time then chk2=1; run;
참고
/*
data ae4 ;
set ae3 ;
duration = put(duration, 7.1);
date_start = datepart(AESTDAT) ;
format date_start date9.;
informat date_start date9.;
rand_code = input(substr(rand_id,2,3),10.) ;
period_a1s = input('07APR2018',date9.) ; ****1기 2기 시작 및 종료 날짜 ***;
period_a1e = input('20APR2018',date9.) ;
period_a2s = input('21APR2018',date9.) ;
period_a2e = input('01MAY2018',date9.) ;
period_b1s = input('14APR2018',date9.) ;
period_b1e = input('27APR2018',date9.) ;
period_b2s = input('28APR2018',date9.) ;
period_b2e = input('09MAY2018',date9.) ;
if ((rand_code <27) and ((period_a1s=<date_start) and (period_a1e=>date_start))) then do ; period = 1; end ;
if ((rand_code <27) and ((period_a2s=<date_start) and (period_a2e=>date_start))) then do ; period = 2; end ;
if ((rand_code >26) and ((period_b1s=<date_start) and (period_b1e=>date_start))) then do ; period = 1; end ;
if ((rand_code >26) and ((period_b2s=<date_start) and (period_b2e=>date_start))) then do ; period = 2; end ;
if ((seq = 1) and (period = 1)) then do ; trt = "R" ; end ;
if ((seq = 1) and (period = 2)) then do ; trt = "T" ;end ;
if ((seq = 2) and (period = 1)) then do ; trt = "T" ; end ;
if ((seq = 2) and (period = 2)) then do ; trt = "R" ;end ;
run;
*/
'통계 clinical trial > SAS' 카테고리의 다른 글
엑셀 파일 만들기 (ODS EXCEL) (0) | 2018.11.02 |
---|---|
SAS에서 excel 파일 불러오기 (PROC IMPORT) (0) | 2018.11.02 |
P-value 집어넣기 (0) | 2018.11.01 |
반올림 버림 (0) | 2018.11.01 |
숫자->문자, 문자->숫자 (0) | 2018.11.01 |