<?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: proc sql count for group and where clause without losing observations in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/proc-sql-count-for-group-and-where-clause-without-losing/m-p/806979#M318046</link>
    <description>&lt;P&gt;Are you trying to count observations or distinct subjects?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you want to count distinct subjects use the DISTINCT keyword.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;count(distinct subject)&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;If you want to ignore the subjects with missing values use a CASE clause, not a WHERE clause&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;count(distinct case when (not missing(value)) then subject end)&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Sun, 10 Apr 2022 05:03:24 GMT</pubDate>
    <dc:creator>Tom</dc:creator>
    <dc:date>2022-04-10T05:03:24Z</dc:date>
    <item>
      <title>proc sql count for group and where clause without losing observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/proc-sql-count-for-group-and-where-clause-without-losing/m-p/806977#M318044</link>
      <description>&lt;P&gt;Hi Team,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I would like to count the records based on group vars and another var VALUE is not missing.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My data :&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=""&gt;data my_data;
	input subject $ test $ visit $ seq value;
	datalines;
001 PULSE VISIT1 01 70
001 PULSE VISIT1 02 80
001 DBP VISIT1 01 70
001 DBP VISIT1 . .
001 WEIGHT VISIT1 01 70
001 WEIGHT VISIT1 02 80
002 PULSE VISIT1 . .
002 PULSE VISIT1 02 80
002 DBP VISIT1 01 70
002 DBP VISIT1 02 80
002 WEIGHT VISIT1 . .
002 WEIGHT VISIT1 02 80
	;
	run;
proc sql noprint;
  create table output as
  select *, count(subject) as count
  from my_data
  where value ^= .
  group by subject, test, visit  
  ;
quit;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;I am getting below output from above proc sql code:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="raja777pharma_0-1649562050192.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/70284i40029C6CD11E57AF/image-size/medium?v=v2&amp;amp;px=400" role="button" title="raja777pharma_0-1649562050192.png" alt="raja777pharma_0-1649562050192.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;But i want below out put with out losing observations to count VISIT values for each subejct by TEST where&amp;nbsp; VALUE will be not missing.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Expected output:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="raja777pharma_1-1649562235083.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/70286i340293929A8CACD4/image-size/medium?v=v2&amp;amp;px=400" role="button" title="raja777pharma_1-1649562235083.png" alt="raja777pharma_1-1649562235083.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;How to do in proc sql to get above output.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;Rajasekhar.&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;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 10 Apr 2022 03:46:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/proc-sql-count-for-group-and-where-clause-without-losing/m-p/806977#M318044</guid>
      <dc:creator>raja777pharma</dc:creator>
      <dc:date>2022-04-10T03:46:40Z</dc:date>
    </item>
    <item>
      <title>Re: proc sql count for group and where clause without losing observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/proc-sql-count-for-group-and-where-clause-without-losing/m-p/806979#M318046</link>
      <description>&lt;P&gt;Are you trying to count observations or distinct subjects?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you want to count distinct subjects use the DISTINCT keyword.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;count(distinct subject)&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;If you want to ignore the subjects with missing values use a CASE clause, not a WHERE clause&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;count(distinct case when (not missing(value)) then subject end)&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Sun, 10 Apr 2022 05:03:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/proc-sql-count-for-group-and-where-clause-without-losing/m-p/806979#M318046</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2022-04-10T05:03:24Z</dc:date>
    </item>
    <item>
      <title>Re: proc sql count for group and where clause without losing observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/proc-sql-count-for-group-and-where-clause-without-losing/m-p/807007#M318071</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;
proc sql ;
  create table output as
  select *, count(value) as count
  from my_data
  group by subject, test, visit  
  ;
quit;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Sun, 10 Apr 2022 11:05:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/proc-sql-count-for-group-and-where-clause-without-losing/m-p/807007#M318071</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2022-04-10T11:05:33Z</dc:date>
    </item>
  </channel>
</rss>

