BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
DmytroYermak
Lapis Lazuli | Level 10

Hi all,

 

I have the following 

 

How is it possible to sort the dataset by 2 variables and assign a Sequence Number in one step?

data test;
	length division group $2.;
	infile datalines;
	input division group;
datalines;
a	t1
b	m2
a	t1
b	m2
a	t2
a	t2
a	t2
b	m2
a	t1
b	m1
b	m1
a	t2


;
run;

proc print data=test; run;

I need the following output:

 

1.jpg

1 ACCEPTED SOLUTION

Accepted Solutions
PeterClemmensen
Tourmaline | Level 20

Like this?

 

data test;
input division$ group$;
datalines;
a t1
b m2
a t1
b m2
a t2
a t2
a t2
b m2
a t1
b m1
b m1
a t2
;

proc sort data=test;
	by division group;
run;

data want;
	set test;
	by division group;
	Seq+1;
	if first.group then Seq=1;
run;

View solution in original post

4 REPLIES 4
PeterClemmensen
Tourmaline | Level 20

Like this?

 

data test;
input division$ group$;
datalines;
a t1
b m2
a t1
b m2
a t2
a t2
a t2
b m2
a t1
b m1
b m1
a t2
;

proc sort data=test;
	by division group;
run;

data want;
	set test;
	by division group;
	Seq+1;
	if first.group then Seq=1;
run;
Haikuo
Onyx | Level 15

There are many ways to do the sorting in SAS, for example

proc sort data=test out=want;
by division group;
run;

Or:

 

proc sql;
create table want as
select * from test
order by division, group
;
quit;

Also, Hash object can also do sort, but it will be overdone for your purpose.

 

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 4 replies
  • 32224 views
  • 3 likes
  • 3 in conversation