Obsidian | Level 7

## Duplicate row according to a variable

I have a large data set like this :

NAME   MONEY   NB  NUMBER
John        300       1         4
Max         250       2         5
Alex         657       1         3
Matt        1520      2         2

For NB = 2, I want to divide NB by 2 , divide MONEY by NUMBER and also keeping observations for NB = 1. I mean how get this  :

NAME   MONEY   NB
John        300       1
Max         50         1

Max         50         1
Alex         657       1
Matt        760       1

Matt        760       1

1 ACCEPTED SOLUTION

Accepted Solutions
Super User

## Re: Duplicate row according to a variable

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

## Re: Duplicate row according to a variable

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

## Re: Duplicate row according to a variable

What if NB = 3 or higher, is that possible?

Obsidian | Level 7

## Re: Duplicate row according to a variable

In my data set, NB is only equals to 1 or 2

Super User

## Re: Duplicate row according to a variable

You can replace the

``nb = nb / 2;``

in my code with

``nb = 1;``

as there can never be a different outcome.

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