<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Assigning analysis flag (ANL01FL) to last occurrence of a visit per parameter per subject in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829011#M327501</link>
    <description>&lt;P&gt;I have a mapping specification for an analysis flag&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Flag any data required for safety summaries. Set ANL01FL to "Y" for: All scheduled visits from Week 1 to Week 16; Data recorded under the Week 20 visit. &lt;FONT color="#FF0000"&gt;If multiple records satisfy these conditions within a single analysis visit, select only the latest occurring visit to set ANL01FL to "Y"&lt;/FONT&gt;. Scheduled visits are the visits which will be included in the summaries for this particular type of data.&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is a mock up sample of data for a subject&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;USUBJID&lt;/TD&gt;&lt;TD&gt;VISIT&lt;/TD&gt;&lt;TD&gt;VISITNUM&lt;/TD&gt;&lt;TD&gt;PARAMCD&lt;/TD&gt;&lt;TD&gt;PARAM&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;BMI&lt;/TD&gt;&lt;TD&gt;Body Mass Index (kg/m2)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Day 1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 2&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 4&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 8&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 12&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;HEIGHT&lt;/TD&gt;&lt;TD&gt;Height (cm)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Day 1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 2&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 4&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 8&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 12&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;BMI&lt;/TD&gt;&lt;TD&gt;Body Mass Index (kg/m2)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;HEIGHT&lt;/TD&gt;&lt;TD&gt;Height (cm)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;RESP&lt;/TD&gt;&lt;TD&gt;Respiratory Rate (breaths/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;SYSBP&lt;/TD&gt;&lt;TD&gt;Systolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;TEMP&lt;/TD&gt;&lt;TD&gt;Temperature (C)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;WEIGHT&lt;/TD&gt;&lt;TD&gt;Weight (kg)&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I was trying to use a dow loop to assign a flag to the latest visit&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=""&gt;proc sort data=advs out=stage1; by usubjid paramcd avalc visitnum; run;

data want(rename=(_anl01fl = anl01fl));
    do _n_ = 1 by 1 until (last.visitnum);
    set stage1;
    by usubjid paramcd avalc visitnum;
    length _anl01fl $2;
    _anl01fl = 'y';
    end;
    
    drop anl01fl;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Anyone have any efficient recommendations/alternatives that doesn't involve too many proc sort/data steps?&lt;/P&gt;</description>
    <pubDate>Wed, 17 Aug 2022 13:09:43 GMT</pubDate>
    <dc:creator>smackerz1988</dc:creator>
    <dc:date>2022-08-17T13:09:43Z</dc:date>
    <item>
      <title>Assigning analysis flag (ANL01FL) to last occurrence of a visit per parameter per subject</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829011#M327501</link>
      <description>&lt;P&gt;I have a mapping specification for an analysis flag&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Flag any data required for safety summaries. Set ANL01FL to "Y" for: All scheduled visits from Week 1 to Week 16; Data recorded under the Week 20 visit. &lt;FONT color="#FF0000"&gt;If multiple records satisfy these conditions within a single analysis visit, select only the latest occurring visit to set ANL01FL to "Y"&lt;/FONT&gt;. Scheduled visits are the visits which will be included in the summaries for this particular type of data.&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is a mock up sample of data for a subject&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;USUBJID&lt;/TD&gt;&lt;TD&gt;VISIT&lt;/TD&gt;&lt;TD&gt;VISITNUM&lt;/TD&gt;&lt;TD&gt;PARAMCD&lt;/TD&gt;&lt;TD&gt;PARAM&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;BMI&lt;/TD&gt;&lt;TD&gt;Body Mass Index (kg/m2)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Day 1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 2&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 4&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 8&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 12&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;HEIGHT&lt;/TD&gt;&lt;TD&gt;Height (cm)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Day 1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 2&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 4&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 8&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1001&lt;/TD&gt;&lt;TD&gt;Week 12&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;BMI&lt;/TD&gt;&lt;TD&gt;Body Mass Index (kg/m2)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;DIABP&lt;/TD&gt;&lt;TD&gt;Diastolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;HEIGHT&lt;/TD&gt;&lt;TD&gt;Height (cm)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;HR&lt;/TD&gt;&lt;TD&gt;Heart Rate (beats/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;RESP&lt;/TD&gt;&lt;TD&gt;Respiratory Rate (breaths/min)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;SYSBP&lt;/TD&gt;&lt;TD&gt;Systolic Blood Pressure (mmHg)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;TEMP&lt;/TD&gt;&lt;TD&gt;Temperature (C)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;TD&gt;Screening&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;WEIGHT&lt;/TD&gt;&lt;TD&gt;Weight (kg)&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I was trying to use a dow loop to assign a flag to the latest visit&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=""&gt;proc sort data=advs out=stage1; by usubjid paramcd avalc visitnum; run;

data want(rename=(_anl01fl = anl01fl));
    do _n_ = 1 by 1 until (last.visitnum);
    set stage1;
    by usubjid paramcd avalc visitnum;
    length _anl01fl $2;
    _anl01fl = 'y';
    end;
    
    drop anl01fl;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Anyone have any efficient recommendations/alternatives that doesn't involve too many proc sort/data steps?&lt;/P&gt;</description>
      <pubDate>Wed, 17 Aug 2022 13:09:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829011#M327501</guid>
      <dc:creator>smackerz1988</dc:creator>
      <dc:date>2022-08-17T13:09:43Z</dc:date>
    </item>
    <item>
      <title>Re: Assigning analysis flag to last occurrence of a visit per parameter per subject</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829012#M327502</link>
      <description>&lt;P&gt;YOur project description talks about variables&amp;nbsp;&lt;SPAN&gt;ANL01FL and&amp;nbsp;ABLFL&amp;nbsp;which don't exist. Mark me down as "confused".&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Nevertheless, if you want to keep the last record where something appears, assign sequential numbers to the rows, then sort by DESCENDING sequential numbers and keep the first.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 17 Aug 2022 13:04:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829012#M327502</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2022-08-17T13:04:47Z</dc:date>
    </item>
    <item>
      <title>Re: Assigning analysis flag to last occurrence of a visit per parameter per subject</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829014#M327504</link>
      <description>I've updated for clarity. Thanks for your comment</description>
      <pubDate>Wed, 17 Aug 2022 13:10:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829014#M327504</guid>
      <dc:creator>smackerz1988</dc:creator>
      <dc:date>2022-08-17T13:10:38Z</dc:date>
    </item>
    <item>
      <title>Re: Assigning analysis flag (ANL01FL) to last occurrence of a visit per parameter per subject</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829016#M327506</link>
      <description>&lt;P&gt;So, given this data, only visitnum 7 should be flagged for&amp;nbsp;&lt;SPAN&gt;USUBJID 1001, right?&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;And should both obs for&amp;nbsp;visitnum 7 be flagged?&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 17 Aug 2022 13:17:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829016#M327506</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2022-08-17T13:17:04Z</dc:date>
    </item>
    <item>
      <title>Re: Assigning analysis flag (ANL01FL) to last occurrence of a visit per parameter per subject</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829020#M327508</link>
      <description>&lt;P&gt;I think this is what you want&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input USUBJID $ VISIT :$20. VISITNUM PARAMCD :$10. PARAM :$50.;
infile datalines dlm = '|';
datalines;
1001|Screening|1|BMI   |Body Mass Index (kg/m2)         
1001|Screening|1|DIABP |Diastolic Blood Pressure (mmHg) 
1001|Day 1    |2|DIABP |Diastolic Blood Pressure (mmHg) 
1001|Week 2   |4|DIABP |Diastolic Blood Pressure (mmHg) 
1001|Week 4   |5|DIABP |Diastolic Blood Pressure (mmHg) 
1001|Week 8   |6|DIABP |Diastolic Blood Pressure (mmHg) 
1001|Week 12  |7|DIABP |Diastolic Blood Pressure (mmHg) 
1001|Screening|1|HEIGHT|Height (cm)                     
1001|Screening|1|HR    |Heart Rate (beats/min)          
1001|Day 1    |2|HR    |Heart Rate (beats/min)          
1001|Week 2   |4|HR    |Heart Rate (beats/min)          
1001|Week 4   |5|HR    |Heart Rate (beats/min)          
1001|Week 8   |6|HR    |Heart Rate (beats/min)          
1001|Week 12  |7|HR    |Heart Rate (beats/min)          
1002|Screening|1|BMI   |Body Mass Index (kg/m2)         
1002|Screening|1|DIABP |Diastolic Blood Pressure (mmHg) 
1002|Screening|1|HEIGHT|Height (cm)                     
1002|Screening|1|HR    |Heart Rate (beats/min)          
1002|Screening|1|RESP  |Respiratory Rate (breaths/min)  
1002|Screening|1|SYSBP |Systolic Blood Pressure (mmHg)  
1002|Screening|1|TEMP  |Temperature (C)                 
1002|Screening|1|WEIGHT|Weight (kg)                     
;

proc sort data = have;
   by USUBJID VISITNUM;
run;

data want(drop = r week);
   set have;
   by USUBJID VISITNUM;
   if first.VISITNUM then r = 0;

   week = ifn(find(visit, 'Week'), compress(visit, , 'kd'), .);
   if week in (1 : 16, 20) then r = 1;

   if last.VISITNUM and r = 1 then ANL01FL = 'Y';

   retain r;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Result:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;USUBJID  VISIT      VISITNUM  PARAMCD  PARAM                            ANL01FL 
1001     Screening  1         BMI      Body Mass Index (kg/m2) 
1001     Screening  1         DIABP    Diastolic Blood Pressure (mmHg) 
1001     Screening  1         HEIGHT   Height (cm) 
1001     Screening  1         HR       Heart Rate (beats/min) 
1001     Day 1      2         DIABP    Diastolic Blood Pressure (mmHg) 
1001     Day 1      2         HR       Heart Rate (beats/min) 
1001     Week 2     4         DIABP    Diastolic Blood Pressure (mmHg) 
1001     Week 2     4         HR       Heart Rate (beats/min)           Y
1001     Week 4     5         DIABP    Diastolic Blood Pressure (mmHg) 
1001     Week 4     5         HR       Heart Rate (beats/min)           Y
1001     Week 8     6         DIABP    Diastolic Blood Pressure (mmHg) 
1001     Week 8     6         HR       Heart Rate (beats/min)           Y
1001     Week 12    7         DIABP    Diastolic Blood Pressure (mmHg) 
1001     Week 12    7         HR       Heart Rate (beats/min)           Y
1002     Screening  1         BMI      Body Mass Index (kg/m2) 
1002     Screening  1         DIABP    Diastolic Blood Pressure (mmHg) 
1002     Screening  1         HEIGHT   Height (cm) 
1002     Screening  1         HR       Heart Rate (beats/min) 
1002     Screening  1         RESP     Respiratory Rate (breaths/min) 
1002     Screening  1         SYSBP    Systolic Blood Pressure (mmHg) 
1002     Screening  1         TEMP     Temperature (C) 
1002     Screening  1         WEIGHT   Weight (kg) &lt;/PRE&gt;</description>
      <pubDate>Wed, 17 Aug 2022 13:44:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829020#M327508</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2022-08-17T13:44:05Z</dc:date>
    </item>
    <item>
      <title>Re: Assigning analysis flag (ANL01FL) to last occurrence of a visit per parameter per subject</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829025#M327510</link>
      <description>&lt;P&gt;That's great thank you so much!. The only thing I would change is that, to me and how I'm interpreting the specs, Day 1 is technically under Week 1.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 17 Aug 2022 13:58:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829025#M327510</guid>
      <dc:creator>smackerz1988</dc:creator>
      <dc:date>2022-08-17T13:58:29Z</dc:date>
    </item>
    <item>
      <title>Re: Assigning analysis flag (ANL01FL) to last occurrence of a visit per parameter per subject</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829027#M327512</link>
      <description>&lt;P&gt;Anytime. Should be easy to edit&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 17 Aug 2022 13:58:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Assigning-analysis-flag-ANL01FL-to-last-occurrence-of-a-visit/m-p/829027#M327512</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2022-08-17T13:58:14Z</dc:date>
    </item>
  </channel>
</rss>

