BookmarkSubscribeRSS Feed

[SAS Format] SAS에서 지원하는 출력 형식 리스트 및 예제(20170613)

Started ‎06-15-2020 by
Modified ‎06-15-2020 by
Views 84

* 출처 : http://blogs.sas.com/content/iml/2017/03/20/sas-formats-fmtinfo.html

 

DATA FORMATINFO;

length N_Type $8. N_Category $4. N_Desc $40. 

       N_DefW $5. N_MinW $5. N_MaxW $5. N_DefD $2. N_MinD $2. N_MaxD $2.

       N_FORAMT $50.

       N_TESTC $10. N_TESTN 8. N_EXAM $50. N_EXAM1 $50.; 

 SET SASHELP.VFORMAT;

     LENGTH N_EXAM $200. N_EXAM1 $200.;

 

     N_Category = fmtinfo(FMTNAME, "Cat");  /* numeric, character, date, ... */

     N_Type = fmtinfo(FMTNAME, "Type");     /* format, informat, or both */

     N_Desc = fmtinfo(FMTNAME, "Desc");     /* short description of the format */

     N_DefW = fmtinfo(FMTNAME, "DefW");     /* default width if you omit w. Example: BEST. */

     N_MinW = fmtinfo(FMTNAME, "MinW");     /* minimum width */

     N_MaxW = fmtinfo(FMTNAME, "MaxW");     /* maximum width */

     N_DefD = fmtinfo(FMTNAME, "DefD");     /* default decimal digits */

     N_MinD = fmtinfo(FMTNAME, "MinD");     /* minimum decimal digits */

     N_MaxD = fmtinfo(FMTNAME, "MaxD");     /* maximum decimal digits */

     N_FORAMT = cats(fmtname,N_maxw,".");

 

     IF      INDEX(FMTNAME,'$') > 0 AND OBJNAME = 'UWFN8601'           THEN DO;

             N_TESTC = '2012915155300FFD';

             N_EXAM = putC(N_TESTC,cats(fmtname,N_maxw,"."));

     END;

     ELSE IF INDEX(FMTNAME,'$') > 0 AND SUBSTR(OBJNAME,1,6) = 'UWFUCS' THEN DO;

             N_TESTC = '白';

             N_EXAM  = putC(N_TESTC,cats(fmtname,N_mINw,"."));

             N_EXAM1 = INputC(N_EXAM,cats(fmtname,N_minw,"."));

     END;

     ELSE IF INDEX(FMTNAME,'$') > 0  THEN DO;

             N_TESTC = 'BACK';

             N_EXAM = putC(N_TESTC,cats(fmtname,N_maxw,"."));

     END;

     * 수치형 데이터 출력형식 예제;

     ELSE IF INDEX(FMTNAME,'$') = 0  THEN DO;

             N_TESTN = 1234;

             N_EXAM  = putN(N_TESTN,cats(fmtname,N_maxw,"."));

     END;

     KEEP OBJNAME FMTNAME N_:;

     WHERE fmttype eq "F";

RUN;

Version history
Last update:
‎06-15-2020 02:04 AM
Updated by:
Contributors

sas-innovate-wordmark-2025-midnight.png

Register Today!

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.


Register now!

Article Labels
Article Tags