<?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: Keep first observation without deleteing duplicates if first observation is repeated in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394771#M277968</link>
    <description>&lt;P&gt;It is very unclear what you want.&lt;/P&gt;
&lt;P&gt;If you just want to get the first observation for each ID*VARA group then you can do this.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want ;
  set have ;
  by id vara;
  if first.vara;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;What you posted looks totally different. &amp;nbsp;Looks like you want to concatenate multiple values into a single variable.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want ;
  set have ;
  by id vara;
  length new $200 ;
  if first.id the new=' ';
  if first.vara then new= catx(' ',new,vara);
  if last.id;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Mon, 11 Sep 2017 17:27:11 GMT</pubDate>
    <dc:creator>Tom</dc:creator>
    <dc:date>2017-09-11T17:27:11Z</dc:date>
    <item>
      <title>Keep first observation without deleteing duplicates if first observation is repeated</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394735#M277965</link>
      <description>&lt;P&gt;I have data that looks like this:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;ID &amp;nbsp; &amp;nbsp; VAR A
1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 2
1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 2
1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 2
1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 4
1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 4
1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 3
1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 3
1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 3
1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 4
1       4
1       3&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want it to look like this:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;ID &amp;nbsp; &amp;nbsp; &amp;nbsp;VAR A_NEW
1 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;2 4 3 4 3&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I would like to keep the first. observation of VAR A but without removing any duplicates if the first observation of VAR A is repeated.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Thank you!&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 11 Sep 2017 16:39:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394735#M277965</guid>
      <dc:creator>hicksv</dc:creator>
      <dc:date>2017-09-11T16:39:05Z</dc:date>
    </item>
    <item>
      <title>Re: Keep first observation without deleteing duplicates if first observation is repeated</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394745#M277966</link>
      <description>&lt;P&gt;&lt;STRONG&gt;data&lt;/STRONG&gt; have;&lt;/P&gt;&lt;P&gt;input (ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VAR_A) ($);&lt;/P&gt;&lt;P&gt;datalines;&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;data&lt;/STRONG&gt; want;&lt;/P&gt;&lt;P&gt;set have;&lt;/P&gt;&lt;P&gt;by id var_a notsorted;&lt;/P&gt;&lt;P&gt;length temp $&lt;STRONG&gt;20&lt;/STRONG&gt;;&lt;/P&gt;&lt;P&gt;retain temp;&lt;/P&gt;&lt;P&gt;if first.id and first.var_a then do;&lt;/P&gt;&lt;P&gt;call missing(temp);&lt;/P&gt;&lt;P&gt;temp=var_a;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;else if first.var_a then temp=cats(temp,var_a);&lt;/P&gt;&lt;P&gt;if last.id;&lt;/P&gt;&lt;P&gt;drop var_a;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;run&lt;/STRONG&gt;;&lt;/P&gt;</description>
      <pubDate>Mon, 11 Sep 2017 17:01:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394745#M277966</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2017-09-11T17:01:20Z</dc:date>
    </item>
    <item>
      <title>Re: Keep first observation without deleteing duplicates if first observation is repeated</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394746#M277967</link>
      <description>&lt;P&gt;My guess is that you don't really want to do that.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Data that looks like&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;ID     VAR A
1       2
1       4
1       3
1       4
1       3&lt;/PRE&gt;
&lt;P&gt;Would be a lot easier to work with generally than a field that contaned "2 4 3 4 3"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Perhaps some context?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Edit:&lt;/P&gt;
&lt;P&gt;cats(temp, var_A) will produce 24343&lt;/P&gt;
&lt;P&gt;catx(" ", temp, var_A) will produce 2 4 3 4 3&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 11 Sep 2017 17:21:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394746#M277967</guid>
      <dc:creator>HB</dc:creator>
      <dc:date>2017-09-11T17:21:52Z</dc:date>
    </item>
    <item>
      <title>Re: Keep first observation without deleteing duplicates if first observation is repeated</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394771#M277968</link>
      <description>&lt;P&gt;It is very unclear what you want.&lt;/P&gt;
&lt;P&gt;If you just want to get the first observation for each ID*VARA group then you can do this.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want ;
  set have ;
  by id vara;
  if first.vara;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;What you posted looks totally different. &amp;nbsp;Looks like you want to concatenate multiple values into a single variable.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want ;
  set have ;
  by id vara;
  length new $200 ;
  if first.id the new=' ';
  if first.vara then new= catx(' ',new,vara);
  if last.id;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 11 Sep 2017 17:27:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394771#M277968</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2017-09-11T17:27:11Z</dc:date>
    </item>
    <item>
      <title>Re: Keep first observation without deleteing duplicates if first observation is repeated</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394955#M277969</link>
      <description>&lt;P&gt;You want one observation per ID, with a new variable containing the sequence of VARA values (excluding consecutive duplicates):&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
  length vara_new $80;

  do until (last.id);
    set have;
    by id vara notsorted;
    if first.vara then vara_new=catx(' ',vara_new,vara);
  end;
  drop vara;
run;

&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 11 Sep 2017 23:01:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394955#M277969</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2017-09-11T23:01:22Z</dc:date>
    </item>
    <item>
      <title>Re: Keep first observation without deleteing duplicates if first observation is repeated</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394977#M277970</link>
      <description>&lt;P&gt;Hi. &amp;nbsp;I took the script from novinosrin from HB and made a little tweaking.&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set sample;&lt;/P&gt;&lt;P&gt;by id var_a &amp;nbsp;notsorted;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;length new&amp;nbsp;$20;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;retain new;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;if first.id and first.&lt;SPAN&gt;var_a&amp;nbsp;&lt;/SPAN&gt;then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp; call missing(new);&lt;/P&gt;&lt;P&gt;&amp;nbsp; new=var;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;else if first.var_a then new=catx("",new,var_a);&lt;/P&gt;&lt;P&gt;if last.id then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var=substr(new,1,1);&lt;/P&gt;&lt;P&gt;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;</description>
      <pubDate>Tue, 12 Sep 2017 04:13:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Keep-first-observation-without-deleteing-duplicates-if-first/m-p/394977#M277970</guid>
      <dc:creator>ShiroAmada</dc:creator>
      <dc:date>2017-09-12T04:13:05Z</dc:date>
    </item>
  </channel>
</rss>

