Solved
Contributor
Posts: 38

# Assigning substring value of a variable to specifics observations

[ Edited ]

I have a large data set like this :

NAME  MONEY  NB  NUMBER    CLASS

John      300        1         4           ab_4_ab_1
Max       250        2         5           be_2_be_1
Matt      1520       2          2          da_3_da_2

I use this code :

``````data want;
set have;
if nb = 2
then do;
money = money / number;
nb = nb / 2;
output;
end;
output;
drop number;
run;``````

to get this data :

NAME    MONEY   NB     CLASS

John       300         1       ab_4_ab_1
Max         50          1       be_2_be_1
Max         50          1       be_2_be_1
Matt        760        1       da_3_da_2
Matt        760        1       da_3_da_2

I want to assign to the first duplicate observation the first four character of CLASS and the last four character of CLASS for the second duplicate observation. I mean how get  this :

NAME    MONEY   NB   CLASS

John       300         1      ab_4_ab_1
Max         50          1       be_2
Max         50          1       be_1
Matt        760        1       da_3
Matt        760        1       da_2

Accepted Solutions
Solution
‎04-26-2017 04:16 AM
Posts: 5,540

## Re: Assigning substring value of a variable to specifics observations

``````data want;
set have;
if nb = 2 then do;
money = money / number;
nb = nb / 2;
c = class;
class = substr(c,1,4);
output;
class = substr(c,6,4);
output;
end;
else output;
drop number c;
run;``````
PG

All Replies
Solution
‎04-26-2017 04:16 AM
Posts: 5,540

## Re: Assigning substring value of a variable to specifics observations

``````data want;
set have;
if nb = 2 then do;
money = money / number;
nb = nb / 2;
c = class;
class = substr(c,1,4);
output;
class = substr(c,6,4);
output;
end;
else output;
drop number c;
run;``````
PG
☑ This topic is solved.