<?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: SAS Data reformat in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304737#M64879</link>
    <description>&lt;P&gt;i want max Screen_number for every SSID&amp;nbsp; and if the min Date_Screened as Date_Screend&amp;nbsp; dates take the Date_Screnned and MAX Date_Screened as Date_Rescreened. date screend failed &amp;amp; Date_Randimized.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;</description>
    <pubDate>Fri, 14 Oct 2016 17:28:27 GMT</pubDate>
    <dc:creator>maddepusrikanth</dc:creator>
    <dc:date>2016-10-14T17:28:27Z</dc:date>
    <item>
      <title>SAS Data reformat</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304722#M64873</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;need to hlep on data reformat as below.&lt;/P&gt;&lt;P&gt;i/p and o/p as below Excel.&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;SSID&lt;/TD&gt;&lt;TD&gt;Screening_Number&lt;/TD&gt;&lt;TD&gt;Date_of_Birth&lt;/TD&gt;&lt;TD&gt;date_screened&lt;/TD&gt;&lt;TD&gt;Date_Randomized&lt;/TD&gt;&lt;TD&gt;Date_Screen_failed&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;158018&lt;/TD&gt;&lt;TD&gt;840238004&lt;/TD&gt;&lt;TD&gt;23Dec1947&lt;/TD&gt;&lt;TD&gt;11Apr2016&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;11May2016&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;158018&lt;/TD&gt;&lt;TD&gt;840238004&lt;/TD&gt;&lt;TD&gt;23Dec1947&lt;/TD&gt;&lt;TD&gt;13Jul2016&lt;/TD&gt;&lt;TD&gt;27Jul2016&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;158018&lt;/TD&gt;&lt;TD&gt;840238019&lt;/TD&gt;&lt;TD&gt;23Dec1947&lt;/TD&gt;&lt;TD&gt;11Apr2016&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;11May2016&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;158018&lt;/TD&gt;&lt;TD&gt;840238019&lt;/TD&gt;&lt;TD&gt;23Dec1947&lt;/TD&gt;&lt;TD&gt;13Jul2016&lt;/TD&gt;&lt;TD&gt;27Jul2016&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;&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;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;&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;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;&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;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;o/p&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;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;SSID&lt;/TD&gt;&lt;TD&gt;Screening_Number&lt;/TD&gt;&lt;TD&gt;Date_of_Birth&lt;/TD&gt;&lt;TD&gt;date_screened&lt;/TD&gt;&lt;TD&gt;Date_Screen_failed&lt;/TD&gt;&lt;TD&gt;Date_Rescreened&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;Date_selected&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;158018&lt;/TD&gt;&lt;TD&gt;840238019&lt;/TD&gt;&lt;TD&gt;23Dec1947&lt;/TD&gt;&lt;TD&gt;11Apr2016&lt;/TD&gt;&lt;TD&gt;13Jul2016&lt;/TD&gt;&lt;TD&gt;11May2016&lt;/TD&gt;&lt;TD&gt;27Jul2016&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 14 Oct 2016 16:53:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304722#M64873</guid>
      <dc:creator>maddepusrikanth</dc:creator>
      <dc:date>2016-10-14T16:53:56Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Data reformat</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304726#M64875</link>
      <description>&lt;P&gt;It is not very clear what are the rules to get the desired output.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I seems you want one ouput record per SSID with:&lt;/P&gt;&lt;P&gt;&amp;nbsp; - the last screening_number of SSID&lt;/P&gt;&lt;P&gt;&amp;nbsp; - date_of_birth (may be from the last observation of SSID)&lt;/P&gt;&lt;P&gt;&amp;nbsp; - the first date_screened of SSID&lt;/P&gt;&lt;P&gt;&amp;nbsp; - assign last date_screened of SSID to date_screened_failed&lt;/P&gt;&lt;P&gt;&amp;nbsp; - save&amp;nbsp;the max(original date_screened_failed) to a new variable: Date_Rescreened&lt;/P&gt;&lt;P&gt;&amp;nbsp; - save the last or max(date_randomized) to a new variable: Date_selected&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You can do it using either SQL or RETAIN in a data step;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Try make your own code and attach it (or&amp;nbsp;the log)&amp;nbsp;if you enter difficulties.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 14 Oct 2016 17:03:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304726#M64875</guid>
      <dc:creator>Shmuel</dc:creator>
      <dc:date>2016-10-14T17:03:55Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Data reformat</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304727#M64876</link>
      <description>&lt;P&gt;You really need to describe, possibly in excrutiating detail, how Date_Screen_failed ends up with the value 13Jul2016 in the output when that is not the value for that variable in the input and the other values associated with 13Jul2016 do not indicate failure in any way that I can see.&lt;/P&gt;</description>
      <pubDate>Fri, 14 Oct 2016 17:06:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304727#M64876</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2016-10-14T17:06:52Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Data reformat</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304737#M64879</link>
      <description>&lt;P&gt;i want max Screen_number for every SSID&amp;nbsp; and if the min Date_Screened as Date_Screend&amp;nbsp; dates take the Date_Screnned and MAX Date_Screened as Date_Rescreened. date screend failed &amp;amp; Date_Randimized.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;</description>
      <pubDate>Fri, 14 Oct 2016 17:28:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304737#M64879</guid>
      <dc:creator>maddepusrikanth</dc:creator>
      <dc:date>2016-10-14T17:28:27Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Data reformat</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304799#M64903</link>
      <description>&lt;P&gt;Test next code, and change it in case I did not understand exactly what you mean:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Proc SQL;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; create table want as select&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; SSID,&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;max(date_bitrh) as date_birth,&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;max(screen_number) as screen_number,&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;min(date_screened) &amp;nbsp; as date_screened,&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;max(date_screened) &amp;nbsp;as date_screened_failed,&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;max(&lt;SPAN&gt;date_screened_failed) as Date_Rescreened,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;max(date_randomized) as Date_Selected&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; FROM have &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; GROUP by SSID;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Quit;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 14 Oct 2016 21:01:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304799#M64903</guid>
      <dc:creator>Shmuel</dc:creator>
      <dc:date>2016-10-14T21:01:44Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Data reformat</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304851#M64936</link>
      <description>&lt;PRE&gt;
data have;
infile cards expandtabs truncover;
input (SSID	Screening_Number	Date_of_Birth	date_screened) (:$20.)	(Date_Randomized	Date_Screen_failed ) (:date9.);
new=coalesce(Date_Randomized,Date_Screen_failed);
format Date_Randomized Date_Screen_failed new date9.;
cards;
158018	840238004	23Dec1947	11Apr2016	 .	11May2016	 
158018	840238004	23Dec1947	13Jul2016	27Jul2016	 .	 
158018	840238019	23Dec1947	11Apr2016	 .	11May2016	 
158018	840238019	23Dec1947	13Jul2016	27Jul2016	 .
;
run;

proc sql;
select max(n) into : n from
(select count(*) as n from have
 group by ssid ,Screening_Number,Date_of_Birth);
quit;
proc summary data=have nway;
 class ssid Screening_Number	Date_of_Birth;
 output out=want idgroup(out[&amp;amp;n] (date_screened new)=);
run;

&lt;/PRE&gt;</description>
      <pubDate>Sat, 15 Oct 2016 06:09:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Data-reformat/m-p/304851#M64936</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2016-10-15T06:09:24Z</dc:date>
    </item>
  </channel>
</rss>

