What are the possible methods for picking the maximum value from a variable in data set using data step (not using proc sql) .Can we do it with Max function . can anyone plz explain with ex?If not with MAX function any other method using data step .
*retain a variable which holds the maximum value found so far;
*if you find a higher value then update the maximum;
if variable>maximum then maximum=variable;
Your last observation will have the maxmum value in it.
There are many other ways but that's a pretty good simple starting point.
I find questions of the type "I know how to do it in SQL but how do I do it in the data step" a bit strange. I use to ask myself the opposite question - how can I do it in SQL instead? I prefer SQL if performance and coding complexity is the same (or better in SQL). There are in my opinion two advantages by using SQL in such cases:
- Non SAS experts can read and understand the code.
- Running the code against non SAS data can exploit the possibilities of using the benefits in implicit SQL pass-thru, which in turn can increase performance.