<?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 Re: Transpose and fill in in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Transpose-and-fill-in/m-p/915136#M360608</link>
    <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
   infile cards expandtabs;
   input obs id start end;
   cards;
1	1	-2	0
2	1	-8	-6
3	1	-11	-10
4	2	-5	-3
5	2	-8	-7
;;;;
   run;
proc print;
   run;

data expand1;
   do until(last.id);
      set have;
      by id;
      array _rng[-13:0];
      do i = start to end;
         _rng[i]=1;
         end;
      end;
   do i = hbound(_rng) to lbound(_rng) by -1;
      day = i;
      dummy = coalesce(_rng[i],0);
      output;
      end;
   keep id day dummy;
   run;

proc print;
   run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Capture.PNG" style="width: 167px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/93426i7408AD7BCF97B906/image-size/large?v=v2&amp;amp;px=999" role="button" title="Capture.PNG" alt="Capture.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
    <pubDate>Thu, 08 Feb 2024 20:11:04 GMT</pubDate>
    <dc:creator>data_null__</dc:creator>
    <dc:date>2024-02-08T20:11:04Z</dc:date>
    <item>
      <title>Transpose and fill in</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-and-fill-in/m-p/915131#M360607</link>
      <description>&lt;P&gt;Data Have illustrate a case where a patients receive a specific service in specific periods before death - which is at day 0. I would like to transpose this file and make it like Data Want where there is one row per day per ID and a dummy variable taking the value of 1 if the service is received, 0 if not. In total, the period covered in this example is 14 days (incl. day 0).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Data Have:&lt;/P&gt;
&lt;TABLE border="1" width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="25%"&gt;Obs&lt;/TD&gt;
&lt;TD width="25%"&gt;ID&lt;/TD&gt;
&lt;TD width="25%"&gt;Startday&lt;/TD&gt;
&lt;TD width="25%"&gt;Endday&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="25%"&gt;1&lt;/TD&gt;
&lt;TD width="25%"&gt;1&lt;/TD&gt;
&lt;TD width="25%"&gt;-2&lt;/TD&gt;
&lt;TD width="25%"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="25%"&gt;2&lt;/TD&gt;
&lt;TD width="25%"&gt;1&lt;/TD&gt;
&lt;TD width="25%"&gt;-8&lt;/TD&gt;
&lt;TD width="25%"&gt;-6&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="25%"&gt;3&lt;/TD&gt;
&lt;TD width="25%"&gt;1&lt;/TD&gt;
&lt;TD width="25%"&gt;-11&lt;/TD&gt;
&lt;TD width="25%"&gt;-10&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="25%"&gt;4&lt;/TD&gt;
&lt;TD width="25%"&gt;2&lt;/TD&gt;
&lt;TD width="25%"&gt;-5&lt;/TD&gt;
&lt;TD width="25%"&gt;-3&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="25%"&gt;5&lt;/TD&gt;
&lt;TD width="25%"&gt;2&lt;/TD&gt;
&lt;TD width="25%"&gt;-8&lt;/TD&gt;
&lt;TD width="25%"&gt;-7&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Data Want&lt;/P&gt;
&lt;TABLE border="1" width="100.00000000000001%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;Obs&lt;/TD&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;ID&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;Day&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;Dummy&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;1&lt;/TD&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;1&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;0&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;2&lt;/TD&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;1&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;-1&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;3&lt;/TD&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;1&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;-2&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;4&lt;/TD&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;1&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;-3&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;5&lt;/TD&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;1&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;-4&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;6&lt;/TD&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;1&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;-5&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;7&lt;/TD&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;1&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;-6&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;8&lt;/TD&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;1&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;-7&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;9&lt;/TD&gt;
&lt;TD width="16.666666666666668%" height="30px"&gt;1&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;-8&lt;/TD&gt;
&lt;TD width="33.333333333333336%" height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;10&lt;/TD&gt;
&lt;TD height="30px"&gt;1&lt;/TD&gt;
&lt;TD height="30px"&gt;-9&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;11&lt;/TD&gt;
&lt;TD height="30px"&gt;1&lt;/TD&gt;
&lt;TD height="30px"&gt;-10&lt;/TD&gt;
&lt;TD height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;12&lt;/TD&gt;
&lt;TD height="30px"&gt;1&lt;/TD&gt;
&lt;TD height="30px"&gt;-11&lt;/TD&gt;
&lt;TD height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;13&lt;/TD&gt;
&lt;TD height="30px"&gt;1&lt;/TD&gt;
&lt;TD height="30px"&gt;-12&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;14&lt;/TD&gt;
&lt;TD height="30px"&gt;1&lt;/TD&gt;
&lt;TD height="30px"&gt;-13&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;15&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;16&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-1&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;17&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-2&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;18&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-3&lt;/TD&gt;
&lt;TD height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;19&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-4&lt;/TD&gt;
&lt;TD height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;20&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-5&lt;/TD&gt;
&lt;TD height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;21&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-6&lt;/TD&gt;
&lt;TD height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;22&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-7&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;23&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-8&lt;/TD&gt;
&lt;TD height="30px"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;24&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-9&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;25&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-10&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;26&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-11&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;27&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-12&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD height="30px"&gt;28&lt;/TD&gt;
&lt;TD height="30px"&gt;2&lt;/TD&gt;
&lt;TD height="30px"&gt;-13&lt;/TD&gt;
&lt;TD height="30px"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 08 Feb 2024 19:29:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-and-fill-in/m-p/915131#M360607</guid>
      <dc:creator>terjeph</dc:creator>
      <dc:date>2024-02-08T19:29:53Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose and fill in</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-and-fill-in/m-p/915136#M360608</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
   infile cards expandtabs;
   input obs id start end;
   cards;
1	1	-2	0
2	1	-8	-6
3	1	-11	-10
4	2	-5	-3
5	2	-8	-7
;;;;
   run;
proc print;
   run;

data expand1;
   do until(last.id);
      set have;
      by id;
      array _rng[-13:0];
      do i = start to end;
         _rng[i]=1;
         end;
      end;
   do i = hbound(_rng) to lbound(_rng) by -1;
      day = i;
      dummy = coalesce(_rng[i],0);
      output;
      end;
   keep id day dummy;
   run;

proc print;
   run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Capture.PNG" style="width: 167px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/93426i7408AD7BCF97B906/image-size/large?v=v2&amp;amp;px=999" role="button" title="Capture.PNG" alt="Capture.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 08 Feb 2024 20:11:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-and-fill-in/m-p/915136#M360608</guid>
      <dc:creator>data_null__</dc:creator>
      <dc:date>2024-02-08T20:11:04Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose and fill in</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-and-fill-in/m-p/915203#M360629</link>
      <description>&lt;P&gt;Worked perfect!&lt;/P&gt;</description>
      <pubDate>Fri, 09 Feb 2024 08:33:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-and-fill-in/m-p/915203#M360629</guid>
      <dc:creator>terjeph</dc:creator>
      <dc:date>2024-02-09T08:33:07Z</dc:date>
    </item>
  </channel>
</rss>

