Sunday, February 28, 2010
Wednesday, February 24, 2010
Tuesday, February 23, 2010
ANY* and NOT* Function
The ANY* and NOT* functions find specific characters within a character string. The set of characters that the functions find is based on the translation table used by SAS, and whether the session is run in an ASCII or EBCDIC environment. To determine which characters are found in your session of SAS, use the following program. Values of 1 mean that the character is found by the function, values of 0 mean the character is not found.
data test;
do dec=0 to 255;
byte=byte(dec);
hex=put(dec,hex2.);
anycntrl=anycntrl(byte);
anygraph=anygraph(byte);
anypunct=anypunct(byte);
notalpha=notalpha(byte);
notprint=notprint(byte);
output;
end;
run;
proc print data=test;
run;
data test;
do dec=0 to 255;
byte=byte(dec);
hex=put(dec,hex2.);
anycntrl=anycntrl(byte);
anygraph=anygraph(byte);
anypunct=anypunct(byte);
notalpha=notalpha(byte);
notprint=notprint(byte);
output;
end;
run;
proc print data=test;
run;
Sunday, February 21, 2010
PROC SURVEYSELECT
Simple random sample without replacement
Select a random sample where no observation can be chosen more than once.
/* WORK.EASTHIGH is a data base of student grade point averages */
/* from East High School, Grades 9 through 12, 100 or more students per grade. */
data EastHigh;
format GPA 3.1;
do Grade=9 to 12;
do StudentID=1 to 100+int(201*ranuni(432098));
GPA=2.0 + (2.1*ranuni(34280));
output;
end;
end;
run;
/* Using PROC SURVEYSELECT */
/* Use METHOD=SRS. N= is the number of observations to select. */
/* The sample is stored in the OUT= data set, SAMPLE1. */
proc surveyselect data=EastHigh method=srs n=15 out=sample1;
run;
title "PROC SURVEYSELECT";
proc print data=sample1;
run;
Simple random sample with replacement
Select a random sample where an observation can be chosen more than once.
/* Using PROC SURVEYSELECT */
/* Use METHOD=URS. N= is the number of observations to select. */
/* The sample is stored in the OUT= data set, SAMPLE. */
/* The OUTHITS option includes an observation in the OUT= data set */
/* for each selected unit. By default, the OUT= will contain one */
/* observation for each unique selected unit and the NumberHits */
/* variable identifies the number of times each unit is selected. */
proc surveyselect data=EastHigh method=urs n=15 out=sample outhits;
run;
title "PROC SURVEYSELECT ";
proc print;
run;
Select a random sample where no observation can be chosen more than once.
/* WORK.EASTHIGH is a data base of student grade point averages */
/* from East High School, Grades 9 through 12, 100 or more students per grade. */
data EastHigh;
format GPA 3.1;
do Grade=9 to 12;
do StudentID=1 to 100+int(201*ranuni(432098));
GPA=2.0 + (2.1*ranuni(34280));
output;
end;
end;
run;
/* Using PROC SURVEYSELECT */
/* Use METHOD=SRS. N= is the number of observations to select. */
/* The sample is stored in the OUT= data set, SAMPLE1. */
proc surveyselect data=EastHigh method=srs n=15 out=sample1;
run;
title "PROC SURVEYSELECT";
proc print data=sample1;
run;
Simple random sample with replacement
Select a random sample where an observation can be chosen more than once.
/* Using PROC SURVEYSELECT */
/* Use METHOD=URS. N= is the number of observations to select. */
/* The sample is stored in the OUT= data set, SAMPLE. */
/* The OUTHITS option includes an observation in the OUT= data set */
/* for each selected unit. By default, the OUT= will contain one */
/* observation for each unique selected unit and the NumberHits */
/* variable identifies the number of times each unit is selected. */
proc surveyselect data=EastHigh method=urs n=15 out=sample outhits;
run;
title "PROC SURVEYSELECT ";
proc print;
run;
Saturday, February 20, 2010
Wednesday, February 10, 2010
Look up system options and display setting
proc print data=sashelp.voption;
run;
proc options group=memory;
run;
proc options option=memblksz define value lognumberformat;
run;
Superscript, Subscript in RFT
data test;
length secnam $15;input sortord secnam $ pvalue;
cards;
1 demog 0.8812
2 ae 0.7112
3 disposition 0.8112
4 medicalhistory 0.9112
;
run;
ods listing close;
ods rtf file="Test.rtf" style=rtfout;
ods escapechar='\'; *** value not limited to \;
proc report data = test missing split="$" spacing=0 headline nowd;
column sortord secnam pvalue;
define sortord / order noprint;
define secnam / order flow "Demographics$Variable\{super a}";
define pvalue / display flow "ANOVA$P-Value\{sub p}";
footnote1 "testing\{super 1}";
footnote2 "new test\{sub 2}";
run;
length secnam $15;input sortord secnam $ pvalue;
cards;
1 demog 0.8812
2 ae 0.7112
3 disposition 0.8112
4 medicalhistory 0.9112
;
run;
ods listing close;
ods rtf file="Test.rtf" style=rtfout;
ods escapechar='\'; *** value not limited to \;
proc report data = test missing split="$" spacing=0 headline nowd;
column sortord secnam pvalue;
define sortord / order noprint;
define secnam / order flow "Demographics$Variable\{super a}";
define pvalue / display flow "ANOVA$P-Value\{sub p}";
footnote1 "testing\{super 1}";
footnote2 "new test\{sub 2}";
run;
ods rtf close;
ods trace off;
ods listing;
Monday, February 8, 2010
Changing titles in ODS Content Page
For those who use the HTML content frame, it can be quite annoying to see a bunch of PROC PRINT or PROC GPLOT in the content page. To change the titles, you can use the following statement.
The PROCLABEL statement also has utility in the PDF destination as it can be used to alter the text in the contents panel.
ODS PROCLABEL "" ;
SAS Qualification Tools
Using two tools to verify SAS installed correctly and operational. The two tools are the SAS Installation Qualification Tool (SAS IQ) and the SAS Operational Qualification Tool (SAS OQ).
- The SAS IQ assists in demonstrating the SAS System has been installed and maintained to the manufacturer's specifications. SAS IQ verifies the integrity of each file in the SAS System 9 and provides the customer a set of reports detailing the results.
- The SAS OQ assists in demonstrating the SAS System is operational. SAS OQ uses SAS programs provided by the component development groups and will execute, process, and report the program results.
Thursday, February 4, 2010
Tuesday, February 2, 2010
Creating a Stored Macro Facility
options mstored sasmstore=macro;
libname macro '/home/dltmp/maclib';
%macro test / store des='This is my program';
%let x=1;
%mend;
%copy test/source;
proc catalog cat=macro.sasmacr;
contents;
run;
Link: http://www2.sas.com/proceedings/forum2008/101-2008.pdf
libname macro '/home/dltmp/maclib';
%macro test / store des='This is my program';
%let x=1;
%mend;
%copy test/source;
proc catalog cat=macro.sasmacr;
contents;
run;
Link: http://www2.sas.com/proceedings/forum2008/101-2008.pdf
Handle special character when import data
sasv9 -set NLS_LANG AMERICAN_AMERICA.WE8MSWIN1252 crdata.sas
Link: http://support.sas.com/kb/18/688.html
Link: http://support.sas.com/kb/18/688.html
Subscribe to:
Posts (Atom)