Help using Base SAS procedures

Repeated measures data manipulation

New Contributor
Posts: 2

Repeated measures data manipulation

Hello all,


I am working with a very large (~65,000 observations) repeated measures data set. Currently, the data is setup in long format. How do I create an indicator variable based on change in variable at different timepoints? 


This is what I have:


ID     Count         Smk_status 

1         1                  Never 

1         2                  Never 


2         1                  Former

2         2                  Former

2         3                  Former


3         1                  Never 

3         2                  Current

3         3                  Former


This is what I want:


ID     Count         Smk_status        Smk_trajectory

1         1                  Never                    Never 

1         2                  Never                    Never 


2         1                  Former                  Former                   

2         2                  Former                  Former                   

2         3                  Former                  Former                   


3         1                  Never                     Inconsistent 

3         2                  Current                  Inconsistent 

3         3                  Former                  Inconsistent 


 I can do this in wide format of data but I am just wondering if anyone has any suggestions to do this in long format of data.



Thanks in advance!

Super User
Posts: 23,754

Re: Repeated measures data manipulation

SQL is pretty good at this one.


proc sql;
create table want as
select *, case when max(smk_status)=min(smk_status) then min(smk_status)
              else 'Inconsistent' end as smk_trajectory
from have
group by ID,
order by ID, count;
Ask a Question
Discussion stats
  • 1 reply
  • 1 like
  • 2 in conversation