Hi everyone,
I have a data set that contain a variable similar to this example,
number
56
56
56
58
58
60
61
61
61
61
61
...
I would like to know the total count of distinct number. In this example is 4 (56, 58, 60, and 61).
How can i do it in SAS? I think i can do
proc sort data= mydata out=dataout noduplications;
...
then use proc freq or proc means
but is that a clever way?
thanks
There are more than one way to get the amount of distinct values of a variable:
1) Using proc sort with nodupkey - just check number of output observations in log or check output dataset.
2) Use proc sql - select distinct variable and end with:
quit;
%put &sqlobs;
then check the log;
3) Assuming your data is sorted by the variable then do:
data _null_;
set have end=eof;
retain distinct_count 0;
by var;
if eof then put distinct_count =;
if first.var then distinct_count +1;
run;
and check the log;
There are more than one way to get the amount of distinct values of a variable:
1) Using proc sort with nodupkey - just check number of output observations in log or check output dataset.
2) Use proc sql - select distinct variable and end with:
quit;
%put &sqlobs;
then check the log;
3) Assuming your data is sorted by the variable then do:
data _null_;
set have end=eof;
retain distinct_count 0;
by var;
if eof then put distinct_count =;
if first.var then distinct_count +1;
run;
and check the log;
You want to do a frequency count, therefore use proc freq(uency) - this is logical and why they called the procedure that name
And an example using the Proc Freq nlevels option:
ods select nlevels; proc freq data=sashelp.class nlevels; tables sex; run;
the ODS Select nlevels; instructs SAS to only show the levels information which would be the number of unique values and missing values if any.
Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.
If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website.
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.