<?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>smilingmelbourne Tracker</title>
    <link>https://communities.sas.com/kntur85557/tracker</link>
    <description>smilingmelbourne Tracker</description>
    <pubDate>Mon, 11 May 2026 10:17:11 GMT</pubDate>
    <dc:date>2026-05-11T10:17:11Z</dc:date>
    <item>
      <title>Why it takes forever to install SAS 9.4 on Windows Pro?</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Why-it-takes-forever-to-install-SAS-9-4-on-Windows-Pro/m-p/412665#M11109</link>
      <description>&lt;P&gt;I reinstalled Win 10 Pro several&amp;nbsp;last week and had a serious issue with installing SAS 9.4. I've been using SAS 9.4 on Win 10 Pro on this laptop for 2 years without a problem. Now, in SAS Deployment Wizard, in Stage 1 with 388 items to install, it took 3 full days to finish just the first 7 items [namely, SAS Private Jave Runtime Enviornment; SAS Deployment Manager; SAS Deployment Support Components; SAS/SECURE Java Component;&amp;nbsp;&lt;SPAN&gt;SAS/SECURE Java Component (Update); SAS Providers for OLE DB (64-bit, English);&amp;nbsp;SAS Providers for OLE DB (32-bit, English)&amp;nbsp;&lt;/SPAN&gt;]. I thought there was some problem with my laptop, so I tried installing it in another PC. Still the same issue. I reinstalled SAS several times in the past on the same laptop and OS without any issue. It ran smoothly, taking about several hours to complete.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;How to overcome this issue? Thanks much&lt;/P&gt;</description>
      <pubDate>Sun, 12 Nov 2017 07:54:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Why-it-takes-forever-to-install-SAS-9-4-on-Windows-Pro/m-p/412665#M11109</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2017-11-12T07:54:24Z</dc:date>
    </item>
    <item>
      <title>Re: proc reg, etc. not run in SAS 9.4 TS1M0 on Windows 10</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/proc-reg-etc-not-run-in-SAS-9-4-TS1M0-on-Windows-10/m-p/306617#M61032</link>
      <description>Thank you. Looks like I have to downgrade my Windows 10 to Windows 8 in order to install this SAS version.</description>
      <pubDate>Sun, 23 Oct 2016 04:58:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/proc-reg-etc-not-run-in-SAS-9-4-TS1M0-on-Windows-10/m-p/306617#M61032</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2016-10-23T04:58:33Z</dc:date>
    </item>
    <item>
      <title>Re: proc reg, etc. not run in SAS 9.4 TS1M0 on Windows 10</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/proc-reg-etc-not-run-in-SAS-9-4-TS1M0-on-Windows-10/m-p/306185#M60970</link>
      <description>&lt;P&gt;Thank you.&lt;BR /&gt;&lt;BR /&gt;When I ran the code as you suggested, the following is all the log shows. What does this mean?&lt;BR /&gt;&lt;BR /&gt;For Base SAS Software ...&lt;BR /&gt; Custom version information: 9.4&lt;BR /&gt; Image version information: 9.04.01M0P061913&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 21 Oct 2016 06:38:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/proc-reg-etc-not-run-in-SAS-9-4-TS1M0-on-Windows-10/m-p/306185#M60970</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2016-10-21T06:38:05Z</dc:date>
    </item>
    <item>
      <title>proc reg, etc. not run in SAS 9.4 TS1M0 on Windows 10</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/proc-reg-etc-not-run-in-SAS-9-4-TS1M0-on-Windows-10/m-p/306157#M60968</link>
      <description>&lt;P&gt;After upgrading to Windows 10 Pro from Windows 8.1, I no longer can use PROC REG/MODEL, etc., even though I can do all the data manipulation tasks without problems. The log file always shows&amp;nbsp;the error as below:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;11 proc reg data = temp;&lt;BR /&gt;&lt;STRONG&gt;ERROR: Procedure REG not found.&lt;/STRONG&gt;&lt;BR /&gt;12 model y x;&lt;BR /&gt;13 run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;When I ran PROC SETINIT, I saw that SAS/STAT has been installed (see the following).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;---Base SAS Software&lt;BR /&gt; 30DEC2016&lt;BR /&gt;&lt;STRONG&gt;---SAS/STAT&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt; 30DEC2016&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Is there a way to fix this problem?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you very much.&lt;/P&gt;</description>
      <pubDate>Fri, 21 Oct 2016 02:32:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/proc-reg-etc-not-run-in-SAS-9-4-TS1M0-on-Windows-10/m-p/306157#M60968</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2016-10-21T02:32:34Z</dc:date>
    </item>
    <item>
      <title>Re: How to get back the default SAS file icon?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-get-back-the-default-SAS-file-icon/m-p/153371#M30120</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks, but unfortunately it didn't work. The SAS program file icon on my desktop doesn't change.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 25 Nov 2013 15:05:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-get-back-the-default-SAS-file-icon/m-p/153371#M30120</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2013-11-25T15:05:19Z</dc:date>
    </item>
    <item>
      <title>How to get back the default SAS file icon?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-get-back-the-default-SAS-file-icon/m-p/153369#M30118</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I somehow messed up with the default SAS file/program icon, i.e., the default one looking like this &lt;A href="http://www.google.com/imgres?imgurl=https://support.sas.com/documentation/cdl/en/hostwin/63285/HTML/default/images/regicon.gif&amp;amp;imgrefurl=https://support.sas.com/documentation/cdl/en/hostwin/63285/HTML/default/a000104288.htm&amp;amp;h=36&amp;amp;w=32&amp;amp;sz=1&amp;amp;tbnid=a2BLZerEzjgF-M:&amp;amp;tbnh=36&amp;amp;tbnw=32&amp;amp;zoom=1&amp;amp;usg=__xvGJ4WsGYYD_u3Dk15QGbKKo5bY=&amp;amp;docid=5dqdhkGjkqKqXM&amp;amp;sa=X&amp;amp;ei=H5KPUpvXB-aRiQfk0oDwCg&amp;amp;ved=0CEYQ9QEwAw" title="http://www.google.com/imgres?imgurl=https://support.sas.com/documentation/cdl/en/hostwin/63285/HTML/default/images/regicon.gif&amp;amp;imgrefurl=https://support.sas.com/documentation/cdl/en/hostwin/63285/HTML/default/a000104288.htm&amp;amp;h=36&amp;amp;w=32&amp;amp;sz=1&amp;amp;tbnid=a2BLZerEzjgF-M:&amp;amp;tbnh=36&amp;amp;tbnw=32&amp;amp;zoom=1&amp;amp;usg=__xvGJ4WsGYYD_u3Dk15QGbKKo5bY=&amp;amp;docid=5dqdhkGjkqKqXM&amp;amp;sa=X&amp;amp;ei=H5KPUpvXB-aRiQfk0oDwCg&amp;amp;ved=0CEYQ9QEwAw"&gt;http://www.google.com/imgres?imgurl=https://support.sas.com/documentation/cdl/en/hostwin/63285/HTML/default/images/regicon.gif&amp;amp;imgrefurl=https://support.sas.com/documentation/cdl/en/hostwin/63285/HTML/default/a000104288.htm&amp;amp;h=36&amp;amp;w=32&amp;amp;sz=1&amp;amp;tbnid=a2BLZerEzjgF-M:&amp;amp;tbnh=36&amp;amp;tbnw=32&amp;amp;zoom=1&amp;amp;usg=__xvGJ4WsGYYD_u3Dk15QGbKKo5bY=&amp;amp;docid=5dqdhkGjkqKqXM&amp;amp;sa=X&amp;amp;ei=H5KPUpvXB-aRiQfk0oDwCg&amp;amp;ved=0CEYQ9QEwAw&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How can I get back this icon?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 22 Nov 2013 17:27:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-get-back-the-default-SAS-file-icon/m-p/153369#M30118</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2013-11-22T17:27:24Z</dc:date>
    </item>
    <item>
      <title>Re: Proc SQL &amp; Data Step INNER JOIN...</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Proc-SQL-Data-Step-INNER-JOIN/m-p/95284#M20057</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, I would like to have only the rows that match (by Cusip) across the two tables.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I read this one &lt;A class="active_link" href="http://www2.sas.com/proceedings/forum2008/178-2008.pdf" title="http://www2.sas.com/proceedings/forum2008/178-2008.pdf"&gt;http://www2.sas.com/proceedings/forum2008/178-2008.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sorry I'm still a bit lost.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The paper above says that the following codes are exactly 100% the same. And I know that Proc SQL with INNER JOIN statement is the same as the WHERE statement.&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;STRONG style="color: #ff0000;"&gt;proc sql;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; create table inner_sql as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; b.transaction&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; , b.item_id&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; , b.qty&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; , b.date&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; , a.sales_id&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; , a.name&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f&lt;EM&gt;&lt;STRONG&gt;rom sales b, &lt;/STRONG&gt;&lt;/EM&gt;&lt;EM&gt;&lt;STRONG&gt;salesperson a&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN style="color: #ff0000;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where&lt;/SPAN&gt; a.sales_id = b.sales_id&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; order by sales_id;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data inner_join;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;EM&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; merge sales ( in = s )&lt;/STRONG&gt;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;EM&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; salesperson ( in = p );&lt;/STRONG&gt;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;EM&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; by sales_id;&lt;/STRONG&gt;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;EM&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if s and p;&lt;/STRONG&gt;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My codes in the original post return different matches, no matter whether I use INNER JOIN or WHERE statement in the Proc SQL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data merged;&lt;/P&gt;&lt;P&gt;588&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #ff0000;"&gt;merge y1999_ (in=a) cusip (in=b);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;589&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; by cusip;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;590&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if a &amp;amp; b;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;591&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NOTE: MERGE statement has more than one data set with repeats of BY values.&lt;/P&gt;&lt;P&gt;NOTE: There were 4857105 observations read from the data set WORK.Y1999_.&lt;/P&gt;&lt;P&gt;NOTE: There were 88319 observations read from the data set WORK.CUSIP.&lt;/P&gt;&lt;P&gt;NOTE: The data set WORK.MERGED has &lt;SPAN style="color: #ff0000;"&gt;3789859&lt;/SPAN&gt; observations and 14 variables.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql feedback;&lt;/P&gt;&lt;P&gt;593&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; create table merged as&lt;/P&gt;&lt;P&gt;594&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select a.*&lt;/P&gt;&lt;P&gt;595&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from y1999_ as a, cusip as b&lt;/P&gt;&lt;P&gt;596&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #ff0000;"&gt;where&lt;/SPAN&gt; a.cusip=b.cusip&lt;/P&gt;&lt;P&gt;597&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NOTE: Table WORK.MERGED created, with &lt;SPAN style="color: #ff0000;"&gt;17955067&lt;/SPAN&gt; rows and 14 columns.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sorry for this inconvenience but I'm a bit lost actually.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Oct 2012 22:23:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Proc-SQL-Data-Step-INNER-JOIN/m-p/95284#M20057</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2012-10-15T22:23:22Z</dc:date>
    </item>
    <item>
      <title>Proc SQL &amp; Data Step INNER JOIN...</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Proc-SQL-Data-Step-INNER-JOIN/m-p/95279#M20052</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I guess these codes should be exactly the same; however, the SAS log tells otherwise! It doesn't really make sense to me how the error arises.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;/* CODES */&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;data merged;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; merge y1999_ (in=a) cusip (in=b);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #ff0000;"&gt;by cusip;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if a &amp;amp; b;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql feedback;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; create table merged as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; select a.*&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; from y1999_ as a &lt;SPAN style="color: #ff0000;"&gt;INNER JOIN&lt;/SPAN&gt; cusip as b&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #ff0000;"&gt;on a.cusip=b.cusip&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;/* SAS LOGS Tell Otherwise */&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="text-decoration: underline;"&gt;/* For 1st code */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;565&amp;nbsp; data merged;&lt;/P&gt;&lt;P&gt;566&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; merge y1999_ (in=a) cusip (in=b);&lt;/P&gt;&lt;P&gt;567&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; by cusip;&lt;/P&gt;&lt;P&gt;568&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if a &amp;amp; b;&lt;/P&gt;&lt;P&gt;569&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NOTE: MERGE statement has more than one data set with repeats of BY values.&lt;/P&gt;&lt;P&gt;NOTE: There were 4857105 observations read from the data set WORK.Y1999_.&lt;/P&gt;&lt;P&gt;NOTE: There were 88319 observations read from the data set WORK.CUSIP.&lt;/P&gt;&lt;P&gt;NOTE: The data set WORK.MERGED has &lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;3789859&lt;/STRONG&gt;&lt;/SPAN&gt; observations and 14 variables.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="text-decoration: underline;"&gt;/* For 2nd code */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;570&amp;nbsp; proc sql feedback;&lt;/P&gt;&lt;P&gt;571&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; create table merged as&lt;/P&gt;&lt;P&gt;572&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select a.*&lt;/P&gt;&lt;P&gt;573&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from y1999_ as a INNER JOIN cusip as b&lt;/P&gt;&lt;P&gt;574&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; on a.cusip=b.cusip&lt;/P&gt;&lt;P&gt;575&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;NOTE: Statement transforms to:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select ....&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from WORK.Y1999_ A inner join WORK.CUSIP B on A.cusip = B.CUSIP;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NOTE: Table WORK.MERGED created, with &lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;17955067&lt;/STRONG&gt;&lt;/SPAN&gt; rows and 14 columns.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I guess they should be the same, right? It's an inner join that keep only observations that share the same BY variable from both data sets.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I find this a mystery, and just can't figure out why. Can you please help? Thanks a lot&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Oct 2012 05:34:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Proc-SQL-Data-Step-INNER-JOIN/m-p/95279#M20052</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2012-10-15T05:34:57Z</dc:date>
    </item>
    <item>
      <title>Re: ERROR: Expecting page 8560, got page -1 instead...</title>
      <link>https://communities.sas.com/t5/SAS-Programming/ERROR-Expecting-page-8560-got-page-1-instead/m-p/81345#M17516</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you for your reply. I couldn't repair the file using your code, but I found your repair statement very useful. I've never known that before.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have re-imported that data set using Proc Dataset rather than the usual copy and paste, and it works. So it leads me to wonder if we should always avoid the usual copy and paste as people often do when copying files among folders, especially with large data sets. We should always use Proc Datasets???&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Oct 2012 02:05:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/ERROR-Expecting-page-8560-got-page-1-instead/m-p/81345#M17516</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2012-10-02T02:05:05Z</dc:date>
    </item>
    <item>
      <title>ERROR: Expecting page 8560, got page -1 instead...</title>
      <link>https://communities.sas.com/t5/SAS-Programming/ERROR-Expecting-page-8560-got-page-1-instead/m-p/81343#M17514</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a SAS data set read in from an original .BCP data file. It has over 400,000 observations. When I tried to do something with this data, such as Proc Means or Proc Sort, etc..., I received the following error message.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="padding-left: 90px;"&gt;&lt;SPAN style="color: #ff0000;"&gt;ERROR: Expecting page 8560, got page -1 instead.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="padding-left: 90px;"&gt;&lt;SPAN style="color: #ff0000;"&gt;ERROR: Page validation error while reading Y1999.TRADES199901.DATA.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="padding-left: 90px;"&gt;&lt;SPAN style="color: #ff0000;"&gt;ERROR: File Y1999.TRADES199901.DATA is damaged. I/O processing did not complete.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="padding-left: 90px;"&gt;&lt;SPAN style="color: #ff0000;"&gt;NOTE: The DATA step has been abnormally terminated.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="padding-left: 90px;"&gt;&lt;SPAN style="color: #ff0000;"&gt;NOTE: The SAS System stopped processing this step because of errors.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="padding-left: 90px;"&gt;&lt;SPAN style="color: #ff0000;"&gt;NOTE: There were 162607 observations read from the data set Y1999.TRADES199901.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have Googled for the solution, and found one but that is not really helpful, as I don't really understand what it means.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you please help?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Oct 2012 09:07:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/ERROR-Expecting-page-8560-got-page-1-instead/m-p/81343#M17514</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2012-10-01T09:07:51Z</dc:date>
    </item>
    <item>
      <title>Re: How to write a macro for renaming lots of variables?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-write-a-macro-for-renaming-lots-of-variables/m-p/128188#M26189</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I cannot use an array because I don't know which column is sure to be character- /numeric-type. They all are supposed to have corresponding columns of identical types, but because many first observations of a column in a data set may be missing, it is set to character-type.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Should I make a macro for converting a column of all data set to its correct type?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 27 Sep 2012 05:26:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-write-a-macro-for-renaming-lots-of-variables/m-p/128188#M26189</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2012-09-27T05:26:13Z</dc:date>
    </item>
    <item>
      <title>How to write a macro for renaming lots of variables?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-write-a-macro-for-renaming-lots-of-variables/m-p/128183#M26184</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a data set that has 200 columns, named VAR1, VAR2, ..., VAR200, say. I need to rename all these in a data step, something like this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%let realname=A B C D E; /*200 different names*/&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***Create a list of 200 fake vars VAR1, VAR2, ...., VAR200;&lt;/P&gt;&lt;P&gt;%macro create_200_vars;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %global fakevars;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %do i=1 %to 200 %by 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let fakevars=&amp;amp;fakevars. VAR&amp;amp;i.;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %put &amp;amp;fakevars;&lt;/P&gt;&lt;P&gt;%mend create_200_vars;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data renamed;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set unnamed; /*Dataset with unnamed vars VAR1, VAR2, ..., VAR200*/&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do i=1 to 200 by 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rename VAR&amp;amp;i.=scan(&amp;amp;fakevars., &amp;amp;i.); ***WRONG HERE, but don't know how to fix it in this datastep;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you please help? Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 22 Sep 2012 08:59:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-write-a-macro-for-renaming-lots-of-variables/m-p/128183#M26184</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2012-09-22T08:59:59Z</dc:date>
    </item>
    <item>
      <title>Re: How to import a .bcp files?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-import-a-bcp-files/m-p/109552#M22743</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you, Ksharp and DanielSantos! Very helpful!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 02 Sep 2012 10:14:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-import-a-bcp-files/m-p/109552#M22743</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2012-09-02T10:14:15Z</dc:date>
    </item>
    <item>
      <title>How to import a .bcp files?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-import-a-bcp-files/m-p/109549#M22740</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I received from a data vendor a bunch of data files with .bcp file extensions and a little application 'gzip'. They told me to unzip the files and rename them as .txt files before importing into SAS in the usual way.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;After unzipping these .bcp files, however, I found out that they remain .bcp files. So I came up with a solution myself by opening those unzipped files with Notepad++ and Save Aa them as .txt files. For these files, I was able to import them all into SAS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, many of the unzipped files are too large to be clicked open in Notepad++, so I could not import them into SAS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you please show me how to fix this issue? Each of the files are in several GBs and cannot be openned in Notepad++ or anything to save them as .txt files. I don't know how to read them into SAS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks so much&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 31 Aug 2012 02:47:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-import-a-bcp-files/m-p/109549#M22740</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2012-08-31T02:47:43Z</dc:date>
    </item>
    <item>
      <title>convert char to num for all _CHARACTER_</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/convert-char-to-num-for-all-CHARACTER/m-p/37711#M9634</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a series of data sets of equal size, each one of which has over 100 columns containing numbers. Due to data downloads into Excel, each data set often differs from the others in the data type of the column. For example, column 2 of data set 1 is numeric but column 2 of data set 2 is character. This poses a problem to me because later on I will need to stack up all these data sets vertically.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I wrote the following code to convert any columns which are of character types to numeric, so that all data sets will have numeric that will be joined vertically. I don't know why the code doesn't work. Errors occur, and if not, then character columns remain of character types and no conversion at all.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Convert any column of char types to numeric;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff;"&gt;data sheet1_1;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; set sheet1 (drop=ISIN);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; array vars{*}$ _CHARACTER_; &lt;SPAN style="color: #00ff00;"&gt;*** work on all those columns in the data set that are of character type and ignore those which already are numeric;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do i=1 to dim(vars) by 1;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vars{i}=input(vars{i},BEST12.);&lt;SPAN style="color: #00ff00;"&gt; *** convert from char to num;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff;"&gt;run;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you please help? Thanks a lot&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Mar 2012 14:28:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/convert-char-to-num-for-all-CHARACTER/m-p/37711#M9634</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2012-03-20T14:28:31Z</dc:date>
    </item>
    <item>
      <title>Re: Emacs ESS: How to write a SAS program on Emacs?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Emacs-ESS-How-to-write-a-SAS-program-on-Emacs/m-p/48491#M13117</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi FriedEgg, thanks for help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) I am using Windows 7 on my PC&lt;/P&gt;&lt;P&gt;2) I can connect to a Unix server through SSH with either PuTTY or SSH&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BUT&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;3) I installed GNU Emacs from &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://ess.r-project.org/index.php?Section=home"&gt;http://ess.r-project.org/index.php?Section=home&lt;/A&gt;&lt;SPAN&gt; . It's called Emacs Speaks Statistics (ESS). I simply clicked on the icon on my Windows 7 desktop, and Emacs open&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4) YES, my problem is after I click on the Emacs desktop icon, Emacs open but this is the first time I come to Emacs, so I don't know how to start a new file, type SAS programs in it, save it, and run SAS on it. That is my problem!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How can I get all the syntax highlighting and coloring in Emacs for SAS? I did as you said and I am now able to write a SAS program in ESS, but I can't figure out how to run such a SAS program within Emacs. After writing the SAS program, save it and close it, is it possible to run SAS directly within Emacs or I must leave Emacs and upload the file to Unix server and run SAS up there?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks so much&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 09 Feb 2012 05:11:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Emacs-ESS-How-to-write-a-SAS-program-on-Emacs/m-p/48491#M13117</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2012-02-09T05:11:57Z</dc:date>
    </item>
    <item>
      <title>Emacs ESS: How to write a SAS program on Emacs?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Emacs-ESS-How-to-write-a-SAS-program-on-Emacs/m-p/48487#M13113</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; Thank, &lt;A href="mailto:Doc@Duke"&gt;Doc@Duke&lt;/A&gt;. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What I am asking is how to write something in Emacs, not how to run SAS from within Emacs. I used Unix on Windows via SSH, and I ran the batch job there. I often write a SAS program in SAS, then upload the file via SSH and then run it as a background job.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, I now want not to write a SAS program using Notepad++ or SAS Program Editor. &lt;STRONG&gt;I want to write a SAS program straight within Emacs. I opened Emacs but I cannot type in something. Suppose I want to write sth like this&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data output;&lt;/P&gt;&lt;P&gt;set input;&lt;/P&gt;&lt;P&gt;if n ^= 100;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;I cannot type those lines in Emacs. HOw can I open a new file in Emacs and start typing those lines above, then save, exit, and how can I run SAS while I am still in Emacs.&lt;/STRONG&gt; People tell me they can do everything within Emacs as far as SAS goes, like editing/writing a new SAS program, editting it, then running it without openning the usual SAS outside of Emacs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 08 Feb 2012 14:35:02 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Emacs-ESS-How-to-write-a-SAS-program-on-Emacs/m-p/48487#M13113</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2012-02-08T14:35:02Z</dc:date>
    </item>
    <item>
      <title>Emacs ESS: How to write a SAS program on Emacs?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Emacs-ESS-How-to-write-a-SAS-program-on-Emacs/m-p/48485#M13111</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've started learning Emacs today so that I will be able to write SAS programs and run them from within Emacs, rather than directly on SAS. I've downloaded and installed Emacs from this site:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive-link-external-small" href="http://ess.r-project.org/index.php?Section=home"&gt;http://ess.r-project.org/index.php?Section=home&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Everyone got through as expected.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, I really don't know how to type in a piece of codes once I've entered Emacs. I've searched through online resources, and I've seen guides, tutorials, etc.. on Emacs, but most of them are on things like how to delete a whole word, delete one character back, etc... Basically, the resources are comprehense and useful for users, but for a complete newbie like me, the first thing is to write a piece of codes and I just can't find where it shows how to do such a thing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When I type in a tiny SAS programs, the cursor just jumps randomly across the screen. I don't know how to do it. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you please help? &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 08 Feb 2012 10:07:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Emacs-ESS-How-to-write-a-SAS-program-on-Emacs/m-p/48485#M13111</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2012-02-08T10:07:41Z</dc:date>
    </item>
    <item>
      <title>DOW loop vs Proc SQL summary function</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/DOW-loop-vs-Proc-SQL-summary-function/m-p/33901#M8215</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've been using Proc SQL summary functions for some time until today when a friend of mine (a student, by the way) who has been using SAS for years at the university advised me not to use Proc SQL for large data sets because it is slow. He instead suggests using DOW loop, as in the following article:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/resources/papers/proceedings09/038-2009.pdf"&gt;http://support.sas.com/resources/papers/proceedings09/038-2009.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you SAS experts please advise which one is better for large datasets (&amp;gt;5GB)? What is the main advantage of DOW loop over Proc SQL summary function? Say I want to compute the percentage of money that each mutual fund invested in each of the sample firms for each of the quarters over the 20 years. The Proc SQL summary function is simple to use, and I have been using it for such a purpose.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you so much&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Oct 2011 04:28:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/DOW-loop-vs-Proc-SQL-summary-function/m-p/33901#M8215</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2011-10-25T04:28:50Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling cumulative sum by BY group.</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Rolling-cumulative-sum-by-BY-group/m-p/71590#M15509</link>
      <description>Thank you, Patrick and Ksharp, for your help. I have revised the macro that I wrote for the rolling sum of return and rolling standard deviation of return. &lt;BR /&gt;
&lt;BR /&gt;
If you have time, can you suggest how to improve the code? &lt;BR /&gt;
&lt;BR /&gt;
&lt;B&gt;%macro rolling_stddev(dsetin=, dsetout=, csvar=, tsvar=, window=, varname=);&lt;BR /&gt;
	&lt;BR /&gt;
&lt;BR /&gt;
/*dsetin: name of dataset from which to compute rolling standard deviation*/&lt;BR /&gt;
	/*dsetout: name of output dataset*/&lt;BR /&gt;
	/*csvar: name of the cross-sectional variable*/&lt;BR /&gt;
	/*tsvar: name of the time series variable*/&lt;BR /&gt;
	/*window: rolling window, e.g. 3-month, 24-month, etc.*/&lt;BR /&gt;
	/*varname: name of variable for which to compute standard deviation*/&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
	/*Determine number of obs of dsetin*/&lt;BR /&gt;
	data _null_;&lt;BR /&gt;
		set &amp;amp;dsetin;&lt;BR /&gt;
		n = _n_; &lt;BR /&gt;
		call symput('numobs', n); &lt;BR /&gt;
	run;&lt;BR /&gt;
	&lt;BR /&gt;
	&lt;BR /&gt;
/*A macro to create a dataset with a single obs that is standard deviation*/&lt;BR /&gt;
	%macro create_rolling_dataset (firstobs=, lastobs=);&lt;BR /&gt;
		proc sort data=&amp;amp;dsetin.;&lt;BR /&gt;
			by &amp;amp;csvar. &amp;amp;tsvar.;&lt;BR /&gt;
		run;&lt;BR /&gt;
&lt;BR /&gt;
		data tempdata;&lt;BR /&gt;
			set &amp;amp;dsetin. (firstobs=&amp;amp;firstobs. obs=&amp;amp;lastobs.);&lt;BR /&gt;
		run;&lt;BR /&gt;
		&lt;BR /&gt;
		data tempdata;&lt;BR /&gt;
			set tempdata;&lt;BR /&gt;
			by &amp;amp;csvar.;&lt;BR /&gt;
			retain &amp;amp;varname._sqr 0; /*square ret*/&lt;BR /&gt;
			retain &amp;amp;varname._sqr_sum 0; /*sum of square ret*/&lt;BR /&gt;
			retain &amp;amp;varname._sum 0; /*sum of ret*/&lt;BR /&gt;
			retain &amp;amp;varname._std 0;&lt;BR /&gt;
&lt;BR /&gt;
			if first.&amp;amp;csvar. then do;&lt;BR /&gt;
				&amp;amp;varname._sqr = 0;&lt;BR /&gt;
				&amp;amp;varname._sqr_sum = 0;&lt;BR /&gt;
				&amp;amp;varname._sum = 0;&lt;BR /&gt;
				n = 0;&lt;BR /&gt;
			end;&lt;BR /&gt;
			&lt;BR /&gt;
			&amp;amp;varname._sqr = &amp;amp;varname.**2;&lt;BR /&gt;
			&amp;amp;varname._sqr_sum = sum(&amp;amp;varname._sqr_sum, &amp;amp;varname._sqr);&lt;BR /&gt;
			&amp;amp;varname._sum = sum(&amp;amp;varname._sum, &amp;amp;varname.);&lt;BR /&gt;
			n + 1;&lt;BR /&gt;
&lt;BR /&gt;
			if last.&amp;amp;csvar. &amp;amp; n = &amp;amp;window. then do;&lt;BR /&gt;
				&amp;amp;varname._mean = &amp;amp;varname._sum /n;&lt;BR /&gt;
				&amp;amp;varname._std = sqrt( (&amp;amp;varname._sqr_sum - 2*&amp;amp;varname._mean*&amp;amp;varname._sum + n*&amp;amp;varname._mean**2)/(n-1) );&lt;BR /&gt;
				output;&lt;BR /&gt;
			end;&lt;BR /&gt;
&lt;BR /&gt;
			drop &amp;amp;varname._sqr &amp;amp;varname._sqr_sum &amp;amp;varname._sum &amp;amp;varname._mean n;&lt;BR /&gt;
		run;&lt;BR /&gt;
&lt;BR /&gt;
	%mend;&lt;BR /&gt;
&lt;BR /&gt;
	%local i fobs;&lt;BR /&gt;
	%let fobs = 2; /*First obs in the 2nd dataset onwards*/&lt;BR /&gt;
	&lt;BR /&gt;
&lt;BR /&gt;
/*Create a base dataset*/&lt;BR /&gt;
	proc sort data = &amp;amp;dsetin.;&lt;BR /&gt;
		by &amp;amp;csvar. &amp;amp;tsvar.;&lt;BR /&gt;
	run;&lt;BR /&gt;
&lt;BR /&gt;
	data &amp;amp;dsetout.;&lt;BR /&gt;
		set &amp;amp;dsetin. (firstobs=1 obs=&amp;amp;window.);&lt;BR /&gt;
	run;&lt;BR /&gt;
	&lt;BR /&gt;
	data &amp;amp;dsetout.;&lt;BR /&gt;
		set &amp;amp;dsetout.;&lt;BR /&gt;
		by &amp;amp;csvar.;&lt;BR /&gt;
		retain &amp;amp;varname._sqr 0; /*square ret*/&lt;BR /&gt;
		retain &amp;amp;varname._sqr_sum 0; /*sum of square ret*/&lt;BR /&gt;
		retain &amp;amp;varname._sum 0; /*sum of ret*/&lt;BR /&gt;
		retain &amp;amp;varname._std 0;&lt;BR /&gt;
&lt;BR /&gt;
		if first.&amp;amp;csvar. then do;&lt;BR /&gt;
			&amp;amp;varname._sqr = 0;&lt;BR /&gt;
			&amp;amp;varname._sqr_sum = 0;&lt;BR /&gt;
			&amp;amp;varname._sum = 0;&lt;BR /&gt;
			n = 0;&lt;BR /&gt;
		end;&lt;BR /&gt;
			&lt;BR /&gt;
		&amp;amp;varname._sqr = &amp;amp;varname.**2;&lt;BR /&gt;
		&amp;amp;varname._sqr_sum = sum(&amp;amp;varname._sqr_sum, &amp;amp;varname._sqr);&lt;BR /&gt;
		&amp;amp;varname._sum = sum(&amp;amp;varname._sum, &amp;amp;varname.);&lt;BR /&gt;
		n + 1;&lt;BR /&gt;
&lt;BR /&gt;
		if last.&amp;amp;csvar. &amp;amp; n = &amp;amp;window. then do;&lt;BR /&gt;
			&amp;amp;varname._mean = &amp;amp;varname._sum /n;&lt;BR /&gt;
			&amp;amp;varname._std = sqrt( (&amp;amp;varname._sqr_sum - 2*&amp;amp;varname._mean*&amp;amp;varname._sum + n*&amp;amp;varname._mean**2)/(n-1) );&lt;BR /&gt;
			output;&lt;BR /&gt;
		end;&lt;BR /&gt;
&lt;BR /&gt;
		drop &amp;amp;varname._sqr &amp;amp;varname._sqr_sum &amp;amp;varname._sum &amp;amp;varname._mean n;&lt;BR /&gt;
	run;&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
	&lt;BR /&gt;
/*Execuate a loop from the 2nd dataset to N-(window-1)th dataset*/&lt;BR /&gt;
	%do i = 2 %to (&amp;amp;numobs. - %eval(&amp;amp;window-1)) %by 1; /*Loop over from 2nd dataset to last dataset*/&lt;BR /&gt;
		%local lobs; /*Last obs*/&lt;BR /&gt;
		%let lobs = %eval(&amp;amp;fobs.+%eval(&amp;amp;window-1));&lt;BR /&gt;
		%create_rolling_dataset (firstobs=&amp;amp;fobs, lastobs=&amp;amp;lobs)&lt;BR /&gt;
		proc append base = &amp;amp;dsetout data = tempdata force; run;&lt;BR /&gt;
		proc delete data = tempdata; run;&lt;BR /&gt;
		%let fobs=%eval(&amp;amp;fobs.+1);&lt;BR /&gt;
	%end;&lt;BR /&gt;
%mend;&lt;BR /&gt;
&lt;/B&gt;</description>
      <pubDate>Sat, 04 Jun 2011 13:29:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Rolling-cumulative-sum-by-BY-group/m-p/71590#M15509</guid>
      <dc:creator>smilingmelbourne</dc:creator>
      <dc:date>2011-06-04T13:29:44Z</dc:date>
    </item>
  </channel>
</rss>

