In the SAS Data step what is the difference between the
subsetting done by Where and subsetting done by If?
Answer Posted / govardhan bandari
IF-Works With New Variable
Where- Cant work With New Variables
IF-Works After PDV
Where-Works Before PDV
IF-in backend if process all the variable and it gives output based on condition
BUT
Where-process only conditionally met obseravtions
IF-Cant work with proceduers(except proc report with compute statement)
WHERE- work with proceduers
| Is This Answer Correct ? | 0 Yes | 0 No |
Post New Answer View All Answers
What is the role of sas grid administrator? : sas-grid-administration
What are the different servers in sas? : sas-grid-administration
what can you learn from the sas log when debugging? : Sas programming
What are the data types in sas?
what is the effect of the options statement errors=1? : Sas programming
What do the put and input function do?
What are the different versions of sas that you have used until now? : sas-grid-administration
what is sas application server, database server, sas olap server and sas metadata server? : Sas-di
What areas of SAS are you most interested in?
If you need the value of a variable rather than the variable itself what would you use to load the value to a macro variable? : sas-macro
Hello, I have PROC SQLs results group by 3 fields and I use SUM and COUNT functions in SQL. The problem is when I try to display my result with PROC TABULATE. I am getting very big numbers. I believe I make a mistake some where in Tabulate. Here is my Proc Tabulate. PROC TABULATE DATA=OUT04_05 FORMAT=12.; CLASS YR CENTRE VISA / PRELOADFMT EXCLUSIVE; VAR NEWUSER FRAUD TRANSFER AUTUSER REISSUE; TABLE CENTRE ALL, (YR ALL)*VISA, (NEWUSER*F=COMMA12. AUTUSER*F=COMMA12. FRAUD*F=COMMA12. TRANSFER*F=COMMA12. REISSUE*F=COMMA12.) / MISSTEXT={LABEL='0'} PRINTMISS RTS=20; FORMAT VISA VISAFMT.; KEYLABEL SUM = ' ' ALL = 'TOTAL'; LABEL YR = 'DATE YEAR' NEWUSER = 'TOTAL NEW ACCT' TRANSFER = 'TOTAL TRANSFER' FRAUD = 'TOTAL FRAUD TRANSFER' AUTUSER = 'TOTAL AUTH USERS' REISSUE = 'TOTAL REISSUE'; When I code it like : NEWUSER*N*F=COMMA12. AUTUSER*N*F=COMMA12. I get same amount numbers but to find a NEWUSER I use COUNT(*) and to find AUTUSER I use SUM(xxxx) function so both result shouldn’t be the same my problem is in this point. Could you tell me where the problem in code is. How can I display my result? TX.
how would you determine the number of missing or nonmissing values in computations? : Sas programming
If a variable contains only numbers, can it be a character data type?
What do you know about symput and symget?
what is the difference between infile and input? : Sas-administrator