<?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: Flag observations that fulfill two conditions together in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/487167#M287135</link>
    <description>&lt;P&gt;Try it. Ask a new question if you get stuck.The Forum is there for you.&lt;/P&gt;</description>
    <pubDate>Wed, 15 Aug 2018 20:05:07 GMT</pubDate>
    <dc:creator>PGStats</dc:creator>
    <dc:date>2018-08-15T20:05:07Z</dc:date>
    <item>
      <title>Flag observations that fulfill two conditions together</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/485335#M287128</link>
      <description>&lt;P&gt;I am very new to SAS and would appreciate patience and help.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have a data set containing student id, term and audit_type. Each term has 2 audit_types and the student can be present at either of them or be present at both. I need to create a flag for each of these 3 scenarios for each student id each term: 1) if the student is present at &lt;STRONG&gt;only&lt;/STRONG&gt; &lt;STRONG&gt;audit_type_1&lt;/STRONG&gt;, 2) if s/he is present at &lt;STRONG&gt;only&lt;/STRONG&gt; &lt;STRONG&gt;audit_type_2&lt;/STRONG&gt; and 3) if s/he is present at &lt;STRONG&gt;audit_type_1 and&amp;nbsp;&lt;/STRONG&gt;&lt;SPAN&gt;&lt;STRONG&gt;audit_type_2 both&lt;/STRONG&gt; during that term&lt;/SPAN&gt;.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;**Sample data**&lt;BR /&gt;---------------&lt;/P&gt;&lt;P&gt;*Id*&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; *Term*&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;*Audit_type*&lt;BR /&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Fall 2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&lt;BR /&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Fall 2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2&lt;BR /&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Winter 2016&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&lt;BR /&gt;3&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Winter 2016&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;2&lt;BR /&gt;4&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Spring 2016&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&lt;BR /&gt;4&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Spring 2016&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;2&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I was able to create a flag for the first 2 scenarios using case when as seen below:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;create table test as&lt;BR /&gt;select id, term, audit_type,&lt;BR /&gt;case&lt;BR /&gt;when&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;audit_type in&lt;/SPAN&gt;&amp;nbsp;('&lt;SPAN&gt;audit_type_1&lt;/SPAN&gt;') then 1&lt;BR /&gt;when&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;audit_type&amp;nbsp;&lt;/SPAN&gt;in ('&lt;SPAN&gt;audit_type_2&amp;nbsp;&lt;/SPAN&gt;') then 2&lt;BR /&gt;end as&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;audit_type_flag&lt;/SPAN&gt;&lt;BR /&gt;from&amp;nbsp;have;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I can't figure out how to flag the third scenario. So, I want something like below:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;*Id*&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; *Term*&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; *Audit_type*&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;SPAN&gt;&amp;nbsp;*Flag*&amp;nbsp;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Fall 2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;3&lt;BR /&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Fall 2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;3&lt;BR /&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Winter 2016&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&lt;BR /&gt;3&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Winter 2016&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;2&lt;BR /&gt;4&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Spring 2016&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;3&lt;BR /&gt;4&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Spring 2016&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;3&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;All help will be highly appreciated. Thanks in advance for your help and support.&lt;/P&gt;</description>
      <pubDate>Thu, 09 Aug 2018 12:38:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/485335#M287128</guid>
      <dc:creator>PDevi</dc:creator>
      <dc:date>2018-08-09T12:38:45Z</dc:date>
    </item>
    <item>
      <title>Re: Flag observations that fulfill two conditions together</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/485340#M287129</link>
      <description>&lt;P&gt;You can get the flag value by summing the audit_type numbers :&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;

create table test as
select 
    id, 
    term, 
    audit_type,
    sum(input(scan(audit_type, 3, "_"), 1.)) as audit_type_flag
from have
group by id;

quit;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;(untested)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 09 Aug 2018 03:27:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/485340#M287129</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2018-08-09T03:27:00Z</dc:date>
    </item>
    <item>
      <title>Re: Flag observations that fulfill two conditions together</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/485341#M287130</link>
      <description>&lt;P&gt;It gets simpler for the edited version of your question:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;

create table test as
select 
    id, 
    term, 
    audit_type,
    sum(distinct audit_type) as audit_type_flag
from have
group by id, term;

quit;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 09 Aug 2018 04:32:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/485341#M287130</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2018-08-09T04:32:54Z</dc:date>
    </item>
    <item>
      <title>Re: Flag observations that fulfill two conditions together</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/485442#M287131</link>
      <description>The code returns only blanks.</description>
      <pubDate>Thu, 09 Aug 2018 12:40:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/485442#M287131</guid>
      <dc:creator>PDevi</dc:creator>
      <dc:date>2018-08-09T12:40:05Z</dc:date>
    </item>
    <item>
      <title>Re: Flag observations that fulfill two conditions together</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/485446#M287132</link>
      <description>&lt;P&gt;To be sure to get a usable code answer, include sample data in the form of a data step.&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/462"&gt;@PGStats&lt;/a&gt;s solution is good. Run the code below. It generates your desired data set.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
length Term $20;
infile datalines dlm=',';
input Id $ Term $ Audit_type;
datalines;
1,Fall 2015,1
1,Fall 2015,2
2,Winter 2016,1
3,Winter 2016,2
4,Spring 2016,1
4,Spring 2016,2
;

proc sql;
   create table want as
   select 
       id, 
       term, 
       audit_type,
       sum(distinct audit_type) as audit_type_flag
   from have
   group by id, term;
quit;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 09 Aug 2018 12:49:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/485446#M287132</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2018-08-09T12:49:38Z</dc:date>
    </item>
    <item>
      <title>Re: Flag observations that fulfill two conditions together</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/487161#M287133</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/31304"&gt;@PeterClemmensen&lt;/a&gt;&amp;nbsp;It worked, thanks.&lt;/P&gt;</description>
      <pubDate>Wed, 15 Aug 2018 20:00:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/487161#M287133</guid>
      <dc:creator>PDevi</dc:creator>
      <dc:date>2018-08-15T20:00:39Z</dc:date>
    </item>
    <item>
      <title>Re: Flag observations that fulfill two conditions together</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/487165#M287134</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/462"&gt;@PGStats&lt;/a&gt;It worked, thank you.&lt;/P&gt;</description>
      <pubDate>Wed, 15 Aug 2018 20:23:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/487165#M287134</guid>
      <dc:creator>PDevi</dc:creator>
      <dc:date>2018-08-15T20:23:21Z</dc:date>
    </item>
    <item>
      <title>Re: Flag observations that fulfill two conditions together</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/487167#M287135</link>
      <description>&lt;P&gt;Try it. Ask a new question if you get stuck.The Forum is there for you.&lt;/P&gt;</description>
      <pubDate>Wed, 15 Aug 2018 20:05:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/487167#M287135</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2018-08-15T20:05:07Z</dc:date>
    </item>
    <item>
      <title>Re: Flag observations that fulfill two conditions together</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/487182#M287136</link>
      <description>I tested and it worked. &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt; Thanks for your encouragement.</description>
      <pubDate>Wed, 15 Aug 2018 20:24:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Flag-observations-that-fulfill-two-conditions-together/m-p/487182#M287136</guid>
      <dc:creator>PDevi</dc:creator>
      <dc:date>2018-08-15T20:24:08Z</dc:date>
    </item>
  </channel>
</rss>

