<?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: Not Missing in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100529#M21062</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The following may not take care of all possible missing values:&lt;/P&gt;&lt;P&gt;%macro clean;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %do i= 1 %to 16;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data clean.&amp;amp;&amp;amp;name&amp;amp;i.;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set notclean.&amp;amp;&amp;amp;name&amp;amp;i.;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where key_str is not missing;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %end;&lt;/P&gt;&lt;P&gt;%mend clean;&lt;/P&gt;&lt;P&gt;%clean;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 08 Feb 2013 18:32:19 GMT</pubDate>
    <dc:creator>SASPhile</dc:creator>
    <dc:date>2013-02-08T18:32:19Z</dc:date>
    <item>
      <title>Not Missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100524#M21057</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&amp;nbsp; %macro t;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; %do i= 1 %to 3;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; data t&amp;amp;i.;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set t&amp;amp;i.;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where key_str is not missing;&lt;/P&gt;&lt;P&gt;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %mend t;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %t;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp; The datasets in set statement are already created and they are huge.I want to include only those records where key_str is not missing.Here key_str is numeric in some datasets and character in some. Then export them to csv files.&lt;/P&gt;&lt;P&gt; %macro export;&lt;/P&gt;&lt;P&gt; %do i=1 %to 16;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; proc export data=&amp;amp;&amp;amp;name&amp;amp;i.&amp;nbsp; outfile="&amp;amp;csv./&amp;amp;&amp;amp;name&amp;amp;i." dbms=dlm replace;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; delimiter='01'x;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; putnames = no;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;BR /&gt; %end;&lt;BR /&gt;%mend export;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My question is ..instead of re-creating new datasets or re-writing the exisiting datasets,can I use a filter condition in proc export where key_str is not missing?&lt;/P&gt;&lt;P&gt;i could do this proc export data=&amp;amp;&amp;amp;name&amp;amp;i.&amp;nbsp; , where statement takes care..but that particular dataset may have the key_str as either numeric or charcter.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Feb 2013 21:59:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100524#M21057</guid>
      <dc:creator>SASPhile</dc:creator>
      <dc:date>2013-02-06T21:59:07Z</dc:date>
    </item>
    <item>
      <title>Re: Not Missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100525#M21058</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm not sure if the "is not null" syntax works in that proc..but..&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;create view vExport as select * from &amp;amp;&amp;amp;Name&amp;amp;i where key_str is not null;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;should work.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Feb 2013 22:03:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100525#M21058</guid>
      <dc:creator>DBailey</dc:creator>
      <dc:date>2013-02-06T22:03:33Z</dc:date>
    </item>
    <item>
      <title>Re: Not Missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100526#M21059</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;missing takes character or number so why can't you just add the where to the export?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;proc export data=&amp;amp;&amp;amp;name&amp;amp;i. (where=(not missing(key_var)) outfile="&amp;amp;csv./&amp;amp;&amp;amp;name&amp;amp;i." dbms=dlm replace;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;delimiter='01'x;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;putnames = no;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt; &lt;/TD&gt;&lt;TD&gt;run;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Feb 2013 22:04:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100526#M21059</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2013-02-06T22:04:40Z</dc:date>
    </item>
    <item>
      <title>Re: Not Missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100527#M21060</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The conflict in your macros is confusing.&amp;nbsp; In the first one you select from 1 to 3, then in the second you create 1 thru 16.&amp;nbsp; Did I misunderstand something?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regardless, unless you are REALLY comfortable and versed at writing macros, I would just use proc sql to create macro variables that contain the statements you want to issue.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The following doesn't do all that you want, but is just offered as an alternative approach:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data t1;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input x key_str;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;1 1&lt;/P&gt;&lt;P&gt;2 .&lt;/P&gt;&lt;P&gt;3 1&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data t2;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input x key_str;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;4 .&lt;/P&gt;&lt;P&gt;5 1&lt;/P&gt;&lt;P&gt;6 .&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data t3;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input x key_str;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;7 1&lt;/P&gt;&lt;P&gt;8 .&lt;/P&gt;&lt;P&gt;9 1&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data t4;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input x key_str;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;0 1&lt;/P&gt;&lt;P&gt;0 1&lt;/P&gt;&lt;P&gt;0 1&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql noprint;&lt;/P&gt;&lt;P&gt;&amp;nbsp; select 'd'||strip(substr(memname,2)),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'if strip(dsn) eq "WORK.'||strip(memname)||'" then output d'||&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; strip(substr(memname,2))||';'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; into :filenames separated by " ",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; :ifstmts separated by " "&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from dictionary.tables&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where libname="WORK" and&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; substr(memname,1,1)="T" and&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; input(substr(memname,2), ? 12.)&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; between 1 and 3&lt;/P&gt;&lt;P&gt;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data &amp;amp;filenames.;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set t1-t3 (where=(not missing(key_str))) indsname=dsn;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;amp;ifstmts.&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Feb 2013 23:45:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100527#M21060</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2013-02-06T23:45:15Z</dc:date>
    </item>
    <item>
      <title>Re: Not Missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100528#M21061</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The challenge is some datasets have key_str as character and some have numeric.&lt;/P&gt;&lt;P&gt;How to exclude those records where there are many ways the key_str has no vlaues.&lt;/P&gt;&lt;P&gt;like '' ' ' .&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Feb 2013 18:25:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100528#M21061</guid>
      <dc:creator>SASPhile</dc:creator>
      <dc:date>2013-02-08T18:25:20Z</dc:date>
    </item>
    <item>
      <title>Re: Not Missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100529#M21062</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The following may not take care of all possible missing values:&lt;/P&gt;&lt;P&gt;%macro clean;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %do i= 1 %to 16;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data clean.&amp;amp;&amp;amp;name&amp;amp;i.;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set notclean.&amp;amp;&amp;amp;name&amp;amp;i.;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where key_str is not missing;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %end;&lt;/P&gt;&lt;P&gt;%mend clean;&lt;/P&gt;&lt;P&gt;%clean;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Feb 2013 18:32:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Not-Missing/m-p/100529#M21062</guid>
      <dc:creator>SASPhile</dc:creator>
      <dc:date>2013-02-08T18:32:19Z</dc:date>
    </item>
  </channel>
</rss>

