DATA Step, Macro, Functions and more

double observations

Reply
Regular Contributor
Posts: 161

double observations

I have the below code with conditions and when i run it it creates double observations.

I am creating a dataset which gives 1 if it satisfies a condition for each treatment group. But it resolves seperately and creates duplictes.

i use the below condition to have treatment wise but it duplicates like below in my datastep

%** Loop for each arm (to avoid transposing the data later) **;
%do k = 1 %to %sysfunc(countw(&ArmList., #)); %** Start for each ArmVar **;
if compress(&ArmVar.) = "%scan(&ArmList.,&k., #)" then do; %** if ArmVar condition **;

 and it is resolved to  code attached.

 

Can any one help me what i am doing wrong

 

 

Attachment
Regular Contributor
Posts: 191

Re: double observations

Check subjid S1287, it will be outputted 3 times, the reason is that it fulfills these conditions:

 

if compress(actarm) = "BLINDED"

if SAFFL='Y'

if dsreas_num_BLINDED

 

All of these has an output statement, you have to check your conditions again if this is not the desired result Smiley Happy

 

//Fredrik

Regular Contributor
Posts: 161

Re: double observations

If it fulfills all conditions then it should be multiple. But what i get is multiple obs of subjids for almost most of them

Regular Contributor
Posts: 191

Re: double observations

I think you need to pick some of the obs you don't want to have multiple times and check the rules for them Smiley Happy

Super User
Posts: 7,854

Re: double observations


vraj1 wrote:

If it fulfills all conditions then it should be multiple. But what i get is multiple obs of subjids for almost most of them


Then they all fulfill multiple conditions. Maxim 3: Know your data.

---------------------------------------------------------------------------------------------
Maxims of Maximally Efficient SAS Programmers
Ask a Question
Discussion stats
  • 4 replies
  • 150 views
  • 1 like
  • 3 in conversation