<?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 Data in SAS in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Transpose-Data-in-SAS/m-p/667216#M199741</link>
    <description>&lt;P&gt;You don't need to flip the data to compute differences between dates. This code assumes that you have actual SAS dates and not a character string that looks like a date, and not SAS date/time values.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
    set have;
    by id;
    prev_activity=lag(activity);
    if not first.id then diff=activity-prev_activity;
    drop prev_activity;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Mon, 06 Jul 2020 15:37:28 GMT</pubDate>
    <dc:creator>PaigeMiller</dc:creator>
    <dc:date>2020-07-06T15:37:28Z</dc:date>
    <item>
      <title>Transpose Data in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-Data-in-SAS/m-p/667212#M199737</link>
      <description>&lt;P&gt;Hi SAS community,&lt;/P&gt;&lt;P&gt;I have a huge data file of information like this:&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Current Data&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ID&lt;/TD&gt;&lt;TD&gt;activity&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;abc123&lt;/TD&gt;&lt;TD&gt;1/22/2020&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;abc123&lt;/TD&gt;&lt;TD&gt;4/1/2020&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;abc123&lt;/TD&gt;&lt;TD&gt;3/15/2020&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;abc123&lt;/TD&gt;&lt;TD&gt;7/1/2020&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;abc123&lt;/TD&gt;&lt;TD&gt;5/10/2020&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;bbfr45&lt;/TD&gt;&lt;TD&gt;1/5/2020&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;bbfr45&lt;/TD&gt;&lt;TD&gt;4/8/2020&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;fff6gr&lt;/TD&gt;&lt;TD&gt;2/8/2020&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;fff6gr&lt;/TD&gt;&lt;TD&gt;6/8/2020&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;fff6gr&lt;/TD&gt;&lt;TD&gt;3/9/2020&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;But I want to be able to flip it so I can calculate date differences between the various points of activity. Is there a proc in SAS that will allow for this transformation?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Wanted Data&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ID&lt;/TD&gt;&lt;TD&gt;Activity 1&lt;/TD&gt;&lt;TD&gt;Activity 2&lt;/TD&gt;&lt;TD&gt;Activity 3&lt;/TD&gt;&lt;TD&gt;Activity 4&lt;/TD&gt;&lt;TD&gt;Activity 5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;abc123&lt;/TD&gt;&lt;TD&gt;1/22/2020&lt;/TD&gt;&lt;TD&gt;4/1/2020&lt;/TD&gt;&lt;TD&gt;3/15/2020&lt;/TD&gt;&lt;TD&gt;5/10/2020&lt;/TD&gt;&lt;TD&gt;7/1/2020&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;bbfr45&lt;/TD&gt;&lt;TD&gt;1/5/2020&lt;/TD&gt;&lt;TD&gt;4/8/2020&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;fff6gr&lt;/TD&gt;&lt;TD&gt;2/8/2020&lt;/TD&gt;&lt;TD&gt;3/9/2020&lt;/TD&gt;&lt;TD&gt;6/8/2020&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you in advance!&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 06 Jul 2020 15:33:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-Data-in-SAS/m-p/667212#M199737</guid>
      <dc:creator>a_zacMD</dc:creator>
      <dc:date>2020-07-06T15:33:10Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose Data in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-Data-in-SAS/m-p/667216#M199741</link>
      <description>&lt;P&gt;You don't need to flip the data to compute differences between dates. This code assumes that you have actual SAS dates and not a character string that looks like a date, and not SAS date/time values.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
    set have;
    by id;
    prev_activity=lag(activity);
    if not first.id then diff=activity-prev_activity;
    drop prev_activity;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 06 Jul 2020 15:37:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-Data-in-SAS/m-p/667216#M199741</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2020-07-06T15:37:28Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose Data in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-Data-in-SAS/m-p/667217#M199742</link>
      <description>&lt;P&gt;PROC TRANSPOSE&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Transposing data tutorials:&lt;BR /&gt;Long to Wide:&lt;BR /&gt;&lt;A href="https://stats.idre.ucla.edu/sas/modules/how-to-reshape-data-long-to-wide-using-proc-transpose/" target="_blank"&gt;https://stats.idre.ucla.edu/sas/modules/how-to-reshape-data-long-to-wide-using-proc-transpose/&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="https://stats.idre.ucla.edu/sas/modules/reshaping-data-long-to-wide-using-the-data-step/" target="_blank"&gt;https://stats.idre.ucla.edu/sas/modules/reshaping-data-long-to-wide-using-the-data-step/&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;But you can also do it in a long method, either using a PROC EXPAND or data step.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
set have;
by ID;
retain

if First.ID then first_event = activity;
time_from_first = activity - first_event;

run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 06 Jul 2020 15:39:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-Data-in-SAS/m-p/667217#M199742</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2020-07-06T15:39:42Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose Data in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-Data-in-SAS/m-p/668063#M200177</link>
      <description>&lt;P&gt;You can use the following code to create the table you want.&lt;/P&gt;
&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;PROC TRANSPOSE data=a out=b prefix=Activity;
	 by id;
	 var activity;	
RUN;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;where &lt;STRONG&gt;b&lt;/STRONG&gt; is the transposed table and &lt;STRONG&gt;a&lt;/STRONG&gt; is the input table.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 09 Jul 2020 21:14:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-Data-in-SAS/m-p/668063#M200177</guid>
      <dc:creator>Angel_Larrion</dc:creator>
      <dc:date>2020-07-09T21:14:52Z</dc:date>
    </item>
  </channel>
</rss>

