<?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: detect % of observations missing using BY in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39550#M10222</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This is not a very elegant solution as I had to physically set 0's to missing and hardcode the number of variables (3), but if quick and dirty will do. . .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have (drop = i);&lt;/P&gt;&lt;P&gt;array v (*) v1-v4;&lt;/P&gt;&lt;P&gt;input store $ 1 product $ 3-4 v1-v4;&lt;/P&gt;&lt;P&gt;do i = 1 to dim(v); if v(i) = 0 then v(i) = .; end;&lt;/P&gt;&lt;P&gt;datalines;&lt;/P&gt;&lt;P&gt;A A1 5 . 6 3&lt;/P&gt;&lt;P&gt;A A1 7 6 0 9&lt;/P&gt;&lt;P&gt;A A1 6 . 4 .&lt;/P&gt;&lt;P&gt;A A2 . 5 3 3&lt;/P&gt;&lt;P&gt;A A2 5 4 7 5&lt;/P&gt;&lt;P&gt;B B1 3 . 0 8&lt;/P&gt;&lt;P&gt;B B1 . 5 6 7&lt;/P&gt;&lt;P&gt;B B2 . 5 8 9&lt;/P&gt;&lt;P&gt;;;;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;create table want as&lt;/P&gt;&lt;P&gt;select store,product,(nmiss(v1)+nmiss(v2)+nmiss(v3)) / (count(*)*3) as result&lt;/P&gt;&lt;P&gt;from have&lt;/P&gt;&lt;P&gt;group by store,product&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Oh, and result is a proportion not a percent so you'd need to format it how you'd like to see it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Karl&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 21 Mar 2012 17:36:44 GMT</pubDate>
    <dc:creator>KarlK</dc:creator>
    <dc:date>2012-03-21T17:36:44Z</dc:date>
    <item>
      <title>detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39547#M10219</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Is there a way I can detect the % of the number of observations that have a valid (not missing or &amp;gt;0) value in a series of variables and using a By grouping.. Here's what I mean..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;HAVE&lt;/P&gt;&lt;P&gt;&lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Store&lt;/STRONG&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Product&lt;/STRONG&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Var1&lt;/STRONG&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Var2&lt;/STRONG&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Var3&lt;/STRONG&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Var4&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG style="color: #ff0000;"&gt;.&lt;/STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&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; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG style="color: #ff0000;"&gt;0&lt;/STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&lt;/P&gt;&lt;P&gt;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG style="color: #ff0000;"&gt;. &lt;/STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;/P&gt;&lt;P&gt;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;. &lt;/STRONG&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&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; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&lt;/P&gt;&lt;P&gt;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000;"&gt;&lt;STRONG&gt;.&lt;/STRONG&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000;"&gt;&lt;STRONG&gt;0&lt;/STRONG&gt; &lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8&lt;/P&gt;&lt;P&gt;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000;"&gt;&lt;STRONG&gt;.&lt;/STRONG&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&lt;/P&gt;&lt;P&gt;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG style="color: #ff0000;"&gt;&lt;SPAN style="color: #800080;"&gt;.&lt;/SPAN&gt; &lt;/STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now if we look at the above data and see that for each Sore and Product, I want to see how many &lt;/P&gt;&lt;P&gt;. and 0's there are for only the Var1 to Var3 in total..&amp;nbsp; So what I'd like to see is:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Store&lt;/STRONG&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Product&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;%-missing&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 33.33%&amp;nbsp;&amp;nbsp; &amp;lt;- 3/9 - highlighted in red&lt;/P&gt;&lt;P&gt;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 16.66%&amp;nbsp;&amp;nbsp; &amp;lt;- 1/6 - highlighted in blue&lt;/P&gt;&lt;P&gt;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 50%&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;- 3/6 - highlighted in green&lt;/P&gt;&lt;P&gt;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 33.33%&amp;nbsp;&amp;nbsp; &amp;lt;- 1/3 - highlighted in purple&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 16:14:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39547#M10219</guid>
      <dc:creator>podarum</dc:creator>
      <dc:date>2012-03-21T16:14:50Z</dc:date>
    </item>
    <item>
      <title>detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39548#M10220</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;It would take more than one step because you're looking at multiple variables and by groups. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 16:51:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39548#M10220</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2012-03-21T16:51:56Z</dc:date>
    </item>
    <item>
      <title>detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39549#M10221</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Why do the calculations use Var1, Var2, and Var3, but ignore Var4?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It's not hard, I just want to know the rules first. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 17:16:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39549#M10221</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2012-03-21T17:16:40Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39550#M10222</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This is not a very elegant solution as I had to physically set 0's to missing and hardcode the number of variables (3), but if quick and dirty will do. . .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have (drop = i);&lt;/P&gt;&lt;P&gt;array v (*) v1-v4;&lt;/P&gt;&lt;P&gt;input store $ 1 product $ 3-4 v1-v4;&lt;/P&gt;&lt;P&gt;do i = 1 to dim(v); if v(i) = 0 then v(i) = .; end;&lt;/P&gt;&lt;P&gt;datalines;&lt;/P&gt;&lt;P&gt;A A1 5 . 6 3&lt;/P&gt;&lt;P&gt;A A1 7 6 0 9&lt;/P&gt;&lt;P&gt;A A1 6 . 4 .&lt;/P&gt;&lt;P&gt;A A2 . 5 3 3&lt;/P&gt;&lt;P&gt;A A2 5 4 7 5&lt;/P&gt;&lt;P&gt;B B1 3 . 0 8&lt;/P&gt;&lt;P&gt;B B1 . 5 6 7&lt;/P&gt;&lt;P&gt;B B2 . 5 8 9&lt;/P&gt;&lt;P&gt;;;;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;create table want as&lt;/P&gt;&lt;P&gt;select store,product,(nmiss(v1)+nmiss(v2)+nmiss(v3)) / (count(*)*3) as result&lt;/P&gt;&lt;P&gt;from have&lt;/P&gt;&lt;P&gt;group by store,product&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Oh, and result is a proportion not a percent so you'd need to format it how you'd like to see it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Karl&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 17:36:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39550#M10222</guid>
      <dc:creator>KarlK</dc:creator>
      <dc:date>2012-03-21T17:36:44Z</dc:date>
    </item>
    <item>
      <title>detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39551#M10223</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; Var4 is just a variable that doesn't have any data that's meaningful, or at least that needs to be considered in my analysis..&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 17:39:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39551#M10223</guid>
      <dc:creator>podarum</dc:creator>
      <dc:date>2012-03-21T17:39:49Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39552#M10224</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;OK, using only var1-var3 then:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; by store product;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if first.product then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; n_missing=0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; n_nonmissing=0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; array keyvars {3} var1-var3;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; do _n_=1 to 3;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if keyvars{_n_} in (0, .) then n_missing + 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else n_nonmissing + 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if last.product;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; pct_missing = 100 * n_missing / (n_missing + n_nonmissing);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; keep store product pct_missing&amp;nbsp;&amp;nbsp; /* possibly keep n_missing and n_nonmissing as well */;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Good luck.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 17:55:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39552#M10224</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2012-03-21T17:55:44Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39553#M10225</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; Thanks Karl.. great results..&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 18:17:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39553#M10225</guid>
      <dc:creator>podarum</dc:creator>
      <dc:date>2012-03-21T18:17:33Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39554#M10226</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; Karl, I'm getting some weird answers when I'm trying only one variable (such as Price)...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;select Store,Product,(nmiss(Price)) / (count(*)*&lt;/SPAN&gt;&lt;STRONG style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt;&lt;STRONG style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt;&lt;STRONG style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt;1) as result&lt;/STRONG&gt;&lt;/STRONG&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt;&lt;STRONG style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt;&lt;STRONG style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt;﻿&lt;/STRONG&gt;&lt;/STRONG&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;﻿as I'd like to see how much of that field is being populated throughout the Stores/Products..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 18:25:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39554#M10226</guid>
      <dc:creator>podarum</dc:creator>
      <dc:date>2012-03-21T18:25:45Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39555#M10227</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; Hmm, I ran the code on your existing v1-v3 from the original post as&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select store,product,nmiss(v1) / count(*) as result&lt;/P&gt;&lt;P&gt;from have&lt;/P&gt;&lt;P&gt;group by store,product;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and got the correct answers. (I removed the extraneous parens and the "*1", but it shouldn't make any difference.)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Did you remember to recode 0's as missing on your Price variable before running the SQL query? If not, maybe you could post some sample data that shows the problem and I'll take another look.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Karl&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 18:36:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39555#M10227</guid>
      <dc:creator>KarlK</dc:creator>
      <dc:date>2012-03-21T18:36:06Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39556#M10228</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; I ran the same code and got the correct results on the test data, but seem sshort on the main data.. I did change the 0's to . ..&lt;/P&gt;&lt;P&gt;I'll try again..&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 18:43:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39556#M10228</guid>
      <dc:creator>podarum</dc:creator>
      <dc:date>2012-03-21T18:43:34Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39557#M10229</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Just to make sure that I'm doing this correctly.. I have 13 varaibles that I need to convert 0's to missing.. so I used this: &lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt;array v (*) Price--NHIP; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt;do i = 1 to dim(v);if v(i) = 0 then v(i) = .;end; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt; and then;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;s&lt;SPAN style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt;&lt;SPAN style="font-size: 10pt; color: #008080; font-family: Courier New;"&gt;elect Store, Product, (nmiss(Price)) / Count(*)*1) as result &lt;/SPAN&gt; &lt;/SPAN&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt;Does this look correct ?&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 18:53:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39557#M10229</guid>
      <dc:creator>podarum</dc:creator>
      <dc:date>2012-03-21T18:53:41Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39558#M10230</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, it looks right (assuming the "group by" is in your actual query). As I said, you can drop the *1 if there's only one variable, but I tried it with and without just to convince myself.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If the results for Price don't "smell" right to you, you might try doing a proc freq on Price, before and after the recode to missing and see if there's something funky going on. Can happen if price is calculated by division and displays formatted as zero but actually is equal to a very small but non-zero number. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 19:01:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39558#M10230</guid>
      <dc:creator>KarlK</dc:creator>
      <dc:date>2012-03-21T19:01:31Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39559#M10231</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; I'm stumped.. I treid everything.. it all makes sense, all the other variables by themselves are fine, except this Price..&lt;/P&gt;&lt;P&gt;could it be that Format = COMMA9. and Informat = BEST32.&amp;nbsp; ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 19:13:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39559#M10231</guid>
      <dc:creator>podarum</dc:creator>
      <dc:date>2012-03-21T19:13:23Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39560#M10232</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Gosh, I don't think so. I'm late for a meeting, but I'll reflect on it during the boring parts. In the meantime, what makes you think the results you're getting from the query are wrong?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 19:16:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39560#M10232</guid>
      <dc:creator>KarlK</dc:creator>
      <dc:date>2012-03-21T19:16:47Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39561#M10233</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; I eyeballed the data and each of the observations has a Price listed, so it would be 100% and another product would be perhaps 90% , but am getting 0% for both.. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 19:19:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39561#M10233</guid>
      <dc:creator>podarum</dc:creator>
      <dc:date>2012-03-21T19:19:52Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39562#M10234</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; Sorry , I think I was getting 0's because I had none missing.. for a second I was thinking I was only seeing the perecentage of missing... All clear now.. thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2012 19:51:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39562#M10234</guid>
      <dc:creator>podarum</dc:creator>
      <dc:date>2012-03-21T19:51:04Z</dc:date>
    </item>
    <item>
      <title>detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39563#M10235</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;data foo;&lt;/P&gt;&lt;P&gt; input (store product) ($) v1-v4;&lt;/P&gt;&lt;P&gt; cards;&lt;/P&gt;&lt;P&gt;A A1 5 . 6 3&lt;/P&gt;&lt;P&gt;A A1 7 6 0 9&lt;/P&gt;&lt;P&gt;A A1 6 . 4 .&lt;/P&gt;&lt;P&gt;A A2 . 5 3 3&lt;/P&gt;&lt;P&gt;A A2 5 4 7 5&lt;/P&gt;&lt;P&gt;B B1 3 . 0 8&lt;/P&gt;&lt;P&gt;B B1 . 5 6 7&lt;/P&gt;&lt;P&gt;B B2 . 5 8 9&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data bar;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set foo;&lt;/P&gt;&lt;P&gt;&amp;nbsp; by store product;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if first.product then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; cnt=0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; nmiss=0;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cnt+4;&lt;/P&gt;&lt;P&gt;&amp;nbsp; nmiss+(coalesce(v1,0)=0) +&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (coalesce(v2,0)=0) +&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (coalesce(v3,0)=0) +&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (coalesce(v4,0)=0);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if last.product then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; pctmiss=nmiss/cnt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; keep store product pctmiss;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt; create table _bar as &lt;/P&gt;&lt;P&gt; select store,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; product,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ( sum( (coalesce(v1,0)=0) + &lt;/P&gt;&lt;P&gt;&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; (coalesce(v2,0)=0) +&lt;/P&gt;&lt;P&gt;&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; (coalesce(v3,0)=0) +&lt;/P&gt;&lt;P&gt;&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; (coalesce(v4,0)=0) ) ) / &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ( count(*)*4 ) as pctmiss&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; from foo&lt;/P&gt;&lt;P&gt;&amp;nbsp; group by store,product;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 22 Mar 2012 23:04:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39563#M10235</guid>
      <dc:creator>FriedEgg</dc:creator>
      <dc:date>2012-03-22T23:04:46Z</dc:date>
    </item>
    <item>
      <title>Re: detect % of observations missing using BY</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39564#M10236</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; Thanks FriedEgg, very interesting approach.. And I had no idea the usage of coalesce, its so usefull.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 23 Mar 2012 01:50:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/detect-of-observations-missing-using-BY/m-p/39564#M10236</guid>
      <dc:creator>podarum</dc:creator>
      <dc:date>2012-03-23T01:50:56Z</dc:date>
    </item>
  </channel>
</rss>

