Help using Base SAS procedures

How can i get required output?

Reply
Contributor
Posts: 49

How can i get required output?

data ae; 

label subjid  ='Subject Number'

      trt     ='Treatment, 1=Control, 2=Active'

      aebodsys='Body System of Event'

  aedecod ='Preferred Term'

  aerel   ='Relatedness, Y=Related, N=Not Related'

  aeser   ='Seriousness, Y=Yes, N=No'

  aetoxgrd='AE Toxicity Grade'

  death   ='Death, 1=Yes'

  aestdy  ='Start Day of AE Relative to First Dose'

  aeendy  ='End Day of AE Relative to First Dose'

  lstfdy  ='Day of Last Follow-up'

  ;

input subjid $ 1-3 trt 5 aebodsys $ 7-33 aedecod $ 34-58 aerel $ 59 aeser $ 62 

      aetoxgrd 65 death 68 aestdy 70-72 aeendy 73-76 lstfdy 77-79;

cards;

001 2 Nervous system disorders    Dizziness               Y  N  1  . 3  4   56

002 1 Cardiac disorders           Cardiomyopathy          N  N  2  . 5  6   78

002 1 Nervous system disorders    Headache                N  N  2  . 12 13  78

002 1 Vascular disorders          Malignant hypertension  N  N  2  . 2  .   78

002 1 Cardiac disorders           Cardiac valve disease   Y  N  2  . 2  34  78

002 1 Nervous system disorders    Headache                Y  Y  3  . 7  8   78

002 1 Vascular disorders          Hypertension            Y  N  2  . 3  4   78

007 2 Infections and infestations Bronchitis              Y  N  1  . 4  16  92

012 2 Infections and infestations Viral infection         Y  N  1  . 2  9   45

020 2 Eye disorders               Conjunctivitis          N  N  1  . 17 21  83

021 2 Infections and infestations Subcutaneous abscess    N  N  2  . 45 .   92

021 2 Gastrointestinal disorders  Constipation            N  N  2  . 23 24  92

021 2 Renal and urinary disorders Renal failure acute     N  N  2  . 43 50  92

021 2 Infections and infestations Sepsis                  Y  Y  4  . 56 .   92

031 1 Gastrointestinal disorders  Hypoaesthesia oral      Y  N  3  . 3  10  68

032 1 Infections and infestations Tooth abscess           N  N  2  . 2  7   78

038 1 Hepatobiliary disorders     Bile duct stone         N  Y  2  . 33 45  90

040 2 Nervous system disorders    Headache                N  N  1  . 12 13  65

041 2 Nervous system disorders    Dizziness               Y  N  1  . 11 12  65

052 1 Infections and infestations Sinusitis               N  N  1  . 21 34  96

053 1 Infections and infestations Bronchitis              N  N  2  . 4  5   55

053 1 Infections and infestations Sinusitis               N  N  2  . 34 .   55

064 2 Nervous system disorders    Syncope                 N  N  2  . 23 .   87

064 2 Cardiac disorders           Myocardial infarction   N  Y  2  . 45 47  87

065 1 Gastrointestinal disorders  Paraesthesia oral       Y  N  1  1 2  6   20

071 2 Infections and infestations Sinusitis               N  N  2  . 3  16  87

077 1 Nervous system disorders    Headache                N  N  2  . 56 67  83

083 2 Infections and infestations Nasopharyngitis         N  N  1  . 32 .   89

085 1 Cardiac disorders           Atrial fibrillation     N  N  2  . 23 24  65

086 2 Infections and infestations Appendicitis            N  N  2  . 20 27  77

087 1 Eye disorders               Ocular hyperaemia       N  N  2  . 22 56  90

087 1 Eye disorders               Eye swelling            N  N  2  . 12 34  90

088 1 Eye disorders               Eye swelling            Y  N  1  . 56 57  94

091 1 Infections and infestations Bronchitis              N  N  1  . 4  10  89

091 1 Cardiac disorders           Atrial fibrillation     N  Y  3  . 28 30  89

092 1 Infections and infestations Urinary tract infection N  N  1  . 23 26  71

093 1 Infections and infestations Oral herpes             N  N  2  . 12 17  99

093 1 Nervous system disorders    Headache                N  N  1  . 3  5   99

095 2 Infections and infestations Laryngitis              N  N  1  . 66 75  89

095 2 Nervous system disorders    Headache                N  N  1  . 88 89  89

097 1 Infections and infestations Nasopharyngitis         N  N  1  . 45 54  88

097 1 Nervous system disorders    Syncope                 N  N  2  . 23 56  88

099 1 Infections and infestations Diverticulitis          N  N  2  . 4  9   59

099 1 Nervous system disorders    Syncope                 N  N  2  . 21 .   59

103 2 Gastrointestinal disorders  Abdominal pain upper    Y  N  1  . 32 33  78

105 1 Infections and infestations Sinusitis               N  N  2  . 66 .   89

105 1 Infections and infestations Nasopharyngitis         N  N  1  . 45 65  89

;

Required output should be like the following table:

Adverse event        Treatment 1        Treatment 2

                                  (n=17)             (n=13)

Atrial fibrillation          2 (11.7)                   0

Bile duct stone           1 (5.88)                  0

Bronchitis                   2 (11.7)                  1(7.69)

.

.

.

.

.

.

.

Thank you in advance Smiley Happy

Contributor
Posts: 69

Re: How can i get required output?

how are you calculating those numbers in the table?

ex what is 2 and what is 11.7 next to atrial fibrillation?

my guess is 2 is the total number of the N=17. I'm not sure about the 11.7. Regardless, the first thing that comes to me is a bit clunky but it will work:

proc sql noprint;

     create table report- as select

          trt,aedocod,count(aedecod) as N, YOUR-CALCULATION-OF-11.7 as Stat

          group by trt, aedecod from dataset;

     select count(trt) into :N1 from dataset where trt=1;

     select count(trt) into :N2 from dataset where trt=2;

quit;

Then a on row data set for your first row of  data:

data N;

     adverseevent="";

     Treatment1="(n=" || &N1. || ")";

     etc.

run;

then a data set that puts them all together

data report2;

     set N report(in=b);

     if b=1 and trt=1 then do;

          adverseevent=aedocod;

          treatment1= trt || "(" || THE-CALCULATED-STATISTIC || ")"

etc.

I don't do a lot of concatenation with the pipes ( || ) and i didn't test everything above so the syntax may not be exactly right but i think that approach of using sql to create a table of statistics, store the treatment group N's into macro variables, then data steps to append and concatenate all those results together will work. someone with more experience with doing direct reporting out of SAS may have something more elegant. If your calculation of 11.7 is more complicated then you  may need to have some other proc or data step first to get that out.

SAS Super FREQ
Posts: 8,740

Re: How can i get required output?

Hi:

Haven't you posted almost this exact same question in this forum?

  So, my question to you is what did the several answers to the previous question help you with? How is this question different from your first question? And, what code (beyond reading the data) have you tried? What procedures have you used to solve this problem?

cynthia

Ask a Question
Discussion stats
  • 2 replies
  • 187 views
  • 0 likes
  • 3 in conversation