<?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: Seeing if a Text value exists across a number of variables in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/Seeing-if-a-Text-value-exists-across-a-number-of-variables/m-p/152781#M40178</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Not sure what you want your output to look like. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There's the whichC function which checks if a value is in a list of other variables, that returns the index of where apples occurred. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x=whichc('APPLES', of product1-product25);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you need to know how many times APPLES was in the list I'd concatenate them and then use countW&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Untested:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;want=countw('APPLES', catx(",", of product1-product25, 'i');&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 16 Dec 2014 22:19:01 GMT</pubDate>
    <dc:creator>Reeza</dc:creator>
    <dc:date>2014-12-16T22:19:01Z</dc:date>
    <item>
      <title>Seeing if a Text value exists across a number of variables</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Seeing-if-a-Text-value-exists-across-a-number-of-variables/m-p/152780#M40177</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have distributors that feature a number of products.&amp;nbsp;&amp;nbsp; Some only 1, but others up to 25.&amp;nbsp;&amp;nbsp;&amp;nbsp; I'd like to scan all 25 columns and return if a distributor features that product&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The data is aligned as follows:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Distributor_ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; First_Product&amp;nbsp; Second_Product......................................25_Product&lt;/P&gt;&lt;P&gt;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;&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; Apples&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Bananas&lt;/P&gt;&lt;P&gt;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;&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; Grapes&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;3&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;&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; Bananas&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Grapes&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;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Kiwis&lt;/P&gt;&lt;P&gt;etc&lt;/P&gt;&lt;P&gt;etc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In EXCEL it's dead easy using COUNTIF(array,value).&amp;nbsp;&amp;nbsp;&amp;nbsp; So, I can create a new column in Excel for each Product.&amp;nbsp;&amp;nbsp; Since Distributor #1 sells Apples, a variable APPLES would have a value of 1 (vs 0) &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1)&amp;nbsp; What's the best way to handle this in SAS?&amp;nbsp; &lt;/P&gt;&lt;P&gt;2)&amp;nbsp; If the products were concatenated into a single variable, best way in that case?&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EX&amp;nbsp;&amp;nbsp; (Apples|Bananas) for Distributor_ID=1 &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Dec 2014 22:13:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Seeing-if-a-Text-value-exists-across-a-number-of-variables/m-p/152780#M40177</guid>
      <dc:creator>Rickaroo</dc:creator>
      <dc:date>2014-12-16T22:13:31Z</dc:date>
    </item>
    <item>
      <title>Re: Seeing if a Text value exists across a number of variables</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Seeing-if-a-Text-value-exists-across-a-number-of-variables/m-p/152781#M40178</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Not sure what you want your output to look like. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There's the whichC function which checks if a value is in a list of other variables, that returns the index of where apples occurred. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x=whichc('APPLES', of product1-product25);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you need to know how many times APPLES was in the list I'd concatenate them and then use countW&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Untested:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;want=countw('APPLES', catx(",", of product1-product25, 'i');&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Dec 2014 22:19:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Seeing-if-a-Text-value-exists-across-a-number-of-variables/m-p/152781#M40178</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2014-12-16T22:19:01Z</dc:date>
    </item>
    <item>
      <title>Re: Seeing if a Text value exists across a number of variables</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Seeing-if-a-Text-value-exists-across-a-number-of-variables/m-p/152782#M40179</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Reeza&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Apples will only happen once - same for all the fruits.&amp;nbsp;&amp;nbsp;&amp;nbsp; I'm leaning toward your "concatenated" answer.&amp;nbsp;&amp;nbsp; I'm waiting to get SAS installed but know this challenge is part of a project I'm working on.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Dec 2014 22:30:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Seeing-if-a-Text-value-exists-across-a-number-of-variables/m-p/152782#M40179</guid>
      <dc:creator>Rickaroo</dc:creator>
      <dc:date>2014-12-16T22:30:27Z</dc:date>
    </item>
    <item>
      <title>Re: Seeing if a Text value exists across a number of variables</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Seeing-if-a-Text-value-exists-across-a-number-of-variables/m-p/152783#M40180</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;A better alternative is to flip your data and run proc freq and easier to query when in long format. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data long;&lt;/P&gt;&lt;P&gt;set have;&lt;/P&gt;&lt;P&gt;array fruits(25) fruit1-fruit25;&lt;/P&gt;&lt;P&gt;do i=1 to 25;&lt;/P&gt;&lt;P&gt;if fruits(i) ne . then fruit=fruit(i);&lt;/P&gt;&lt;P&gt;output;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;keep id i fruit;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc freq data=long;&lt;/P&gt;&lt;P&gt;table id*fruit;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*All ID's that have apple:&lt;/P&gt;&lt;P&gt;data apples;&lt;/P&gt;&lt;P&gt;set long;&lt;/P&gt;&lt;P&gt;where fruit='APPLE';&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Dec 2014 22:41:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Seeing-if-a-Text-value-exists-across-a-number-of-variables/m-p/152783#M40180</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2014-12-16T22:41:57Z</dc:date>
    </item>
  </channel>
</rss>

