<?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 ROBUSTREG in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69751#M20069</link>
    <description>To get the goodness of fit info and the error statistics for the parameters, I'm trying to use PIPEs to capture the print data for parsing.&lt;BR /&gt;
&lt;BR /&gt;
Using PIPEs is proving to be very difficult.  I trying to use&lt;BR /&gt;
&lt;BR /&gt;
&lt;PRE&gt;&lt;BR /&gt;
signon p1 sascmd='!sascmd' wait=no signonwait=no;&lt;BR /&gt;
rsubmit p1  wait=no ;&lt;BR /&gt;
&lt;BR /&gt;
options source2;&lt;BR /&gt;
filename outp namepipe '\\.\PIPE\pipe1'; &lt;BR /&gt;
...&lt;BR /&gt;
proc printto print=outp;&lt;BR /&gt;
...&lt;BR /&gt;
proc printto print=print;&lt;BR /&gt;
&lt;BR /&gt;
endrsubmit p1;&lt;BR /&gt;
&lt;BR /&gt;
signon p2 sascmd='!sascmd';&lt;BR /&gt;
rsubmit p2;&lt;BR /&gt;
&lt;BR /&gt;
options source source2;&lt;BR /&gt;
&lt;BR /&gt;
filename inp namepipe "\\.\PIPE\pipe1" client;&lt;BR /&gt;
&lt;BR /&gt;
data retrieved;&lt;BR /&gt;
  length line $256;&lt;BR /&gt;
  infile inp;&lt;BR /&gt;
  input line $;&lt;BR /&gt;
run;&lt;BR /&gt;
quit;&lt;BR /&gt;
&lt;BR /&gt;
proc print data=retrieved;&lt;BR /&gt;
run;&lt;BR /&gt;
quit;&lt;BR /&gt;
&lt;BR /&gt;
endrsubmit p2;&lt;BR /&gt;
&lt;BR /&gt;
signoff p1&lt;BR /&gt;
signoff p2&lt;BR /&gt;
&lt;BR /&gt;
&lt;/PRE&gt;</description>
    <pubDate>Mon, 19 Jan 2009 14:06:08 GMT</pubDate>
    <dc:creator>deleted_user</dc:creator>
    <dc:date>2009-01-19T14:06:08Z</dc:date>
    <item>
      <title>Proc ROBUSTREG</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69749#M20067</link>
      <description>I have been doing some analysis using PROC REG.&lt;BR /&gt;
There are some flaws to the analysis.&lt;BR /&gt;
PROC ROBUSTREG would be the best tool to use for the analysis, except I haven't been able to find a way to get at the error and goodness of fit parameters into a datafile like you can with PROC REG.&lt;BR /&gt;
Also,  I am regressing hundreds of systems, so I have to use "noprint" as an option for PROC REG to suppress the &amp;gt;30,000 pages of output it tries to create.  Is there a way to deal with this in PROC ROBUSTREG?</description>
      <pubDate>Fri, 16 Jan 2009 14:34:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69749#M20067</guid>
      <dc:creator>deleted_user</dc:creator>
      <dc:date>2009-01-16T14:34:08Z</dc:date>
    </item>
    <item>
      <title>Re: Proc ROBUSTREG</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69750#M20068</link>
      <description>usually the trick is ods _all_ close; or ods select none; because some PROCs don't have the NOPRINT option.&lt;BR /&gt;
&lt;BR /&gt;
reference: &lt;A href="http://support.sas.com/onlinedoc/913/getDoc/en/statug.hlp/ods_sect4.htm" target="_blank"&gt;http://support.sas.com/onlinedoc/913/getDoc/en/statug.hlp/ods_sect4.htm&lt;/A&gt;</description>
      <pubDate>Fri, 16 Jan 2009 17:41:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69750#M20068</guid>
      <dc:creator>deleted_user</dc:creator>
      <dc:date>2009-01-16T17:41:40Z</dc:date>
    </item>
    <item>
      <title>Re: Proc ROBUSTREG</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69751#M20069</link>
      <description>To get the goodness of fit info and the error statistics for the parameters, I'm trying to use PIPEs to capture the print data for parsing.&lt;BR /&gt;
&lt;BR /&gt;
Using PIPEs is proving to be very difficult.  I trying to use&lt;BR /&gt;
&lt;BR /&gt;
&lt;PRE&gt;&lt;BR /&gt;
signon p1 sascmd='!sascmd' wait=no signonwait=no;&lt;BR /&gt;
rsubmit p1  wait=no ;&lt;BR /&gt;
&lt;BR /&gt;
options source2;&lt;BR /&gt;
filename outp namepipe '\\.\PIPE\pipe1'; &lt;BR /&gt;
...&lt;BR /&gt;
proc printto print=outp;&lt;BR /&gt;
...&lt;BR /&gt;
proc printto print=print;&lt;BR /&gt;
&lt;BR /&gt;
endrsubmit p1;&lt;BR /&gt;
&lt;BR /&gt;
signon p2 sascmd='!sascmd';&lt;BR /&gt;
rsubmit p2;&lt;BR /&gt;
&lt;BR /&gt;
options source source2;&lt;BR /&gt;
&lt;BR /&gt;
filename inp namepipe "\\.\PIPE\pipe1" client;&lt;BR /&gt;
&lt;BR /&gt;
data retrieved;&lt;BR /&gt;
  length line $256;&lt;BR /&gt;
  infile inp;&lt;BR /&gt;
  input line $;&lt;BR /&gt;
run;&lt;BR /&gt;
quit;&lt;BR /&gt;
&lt;BR /&gt;
proc print data=retrieved;&lt;BR /&gt;
run;&lt;BR /&gt;
quit;&lt;BR /&gt;
&lt;BR /&gt;
endrsubmit p2;&lt;BR /&gt;
&lt;BR /&gt;
signoff p1&lt;BR /&gt;
signoff p2&lt;BR /&gt;
&lt;BR /&gt;
&lt;/PRE&gt;</description>
      <pubDate>Mon, 19 Jan 2009 14:06:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69751#M20069</guid>
      <dc:creator>deleted_user</dc:creator>
      <dc:date>2009-01-19T14:06:08Z</dc:date>
    </item>
    <item>
      <title>Re: Proc ROBUSTREG</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69752#M20070</link>
      <description>continuing failure, stepping back even farther.&lt;BR /&gt;
&lt;BR /&gt;
Created two test SAS programs:  pipe_server_play.sas and pipe_client_play.sas&lt;BR /&gt;
Copied the server code example from the SAS Help Filename Named Pipes document to pipe_server_play.sas&lt;BR /&gt;
Copied the client code example to pipe_client_play.sas&lt;BR /&gt;
Highlighted both programs in Windows Explorer, right-clicked and selected "Batch Submit with SAS 9.1"&lt;BR /&gt;
Both ran essentially simultaneous.&lt;BR /&gt;
Both terminated.&lt;BR /&gt;
Both ran with out error.&lt;BR /&gt;
Got the appropriate results in pipe_client_play.lst&lt;BR /&gt;
&lt;BR /&gt;
Therefore, named pipes will work on my workstation.&lt;BR /&gt;
I can eliminate that potential problem from the troubleshooting space.</description>
      <pubDate>Tue, 20 Jan 2009 14:03:17 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69752#M20070</guid>
      <dc:creator>deleted_user</dc:creator>
      <dc:date>2009-01-20T14:03:17Z</dc:date>
    </item>
    <item>
      <title>Re: Proc ROBUSTREG</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69753#M20071</link>
      <description>wrapped the server inside an asynchronous SAS/CONNECT session, but still in a separate program.&lt;BR /&gt;
&lt;BR /&gt;
Still works.&lt;BR /&gt;
&lt;BR /&gt;
Important note:  the asynchronous session must have a "signoff" statement for normal termination.</description>
      <pubDate>Tue, 20 Jan 2009 14:08:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69753#M20071</guid>
      <dc:creator>deleted_user</dc:creator>
      <dc:date>2009-01-20T14:08:48Z</dc:date>
    </item>
    <item>
      <title>Re: Proc ROBUSTREG</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69754#M20072</link>
      <description>Put the client process in the same source file as the server.&lt;BR /&gt;
Still working.&lt;BR /&gt;
This is goodness, so far.&lt;BR /&gt;
&lt;BR /&gt;
[pre]&lt;BR /&gt;
signon p1 sascmd='!sascmd' wait=no signonwait=no;&lt;BR /&gt;
rsubmit p1  wait=no ;&lt;BR /&gt;
 &lt;BR /&gt;
options source source2;&lt;BR /&gt;
 &lt;BR /&gt;
   /* Creates a pipe called WOMEN, acting */&lt;BR /&gt;
   /* as a server. The server waits 30    */&lt;BR /&gt;
   /* seconds for a client to connect.    */&lt;BR /&gt;
filename women namepipe '\\.\pipe\women'  server retry=30;&lt;BR /&gt;
   /* This code writes three records into */&lt;BR /&gt;
   /* the named pipe called WOMEN.        */&lt;BR /&gt;
data class;&lt;BR /&gt;
   input name $ sex $ age;&lt;BR /&gt;
   file women;&lt;BR /&gt;
   if upcase(sex)='F' then&lt;BR /&gt;
      put name age;&lt;BR /&gt;
   datalines;&lt;BR /&gt;
MOORE M 15&lt;BR /&gt;
JOHNSON F 16&lt;BR /&gt;
DALY F 14&lt;BR /&gt;
ROBERTS M 14&lt;BR /&gt;
PARKER F 13&lt;BR /&gt;
;&lt;BR /&gt;
 &lt;BR /&gt;
endrsubmit;&lt;BR /&gt;
 &lt;BR /&gt;
   /* Creates a pipe called WOMEN, acting */&lt;BR /&gt;
   /* as a client.  The client waits 30   */&lt;BR /&gt;
   /* seconds for a server to connect.    */&lt;BR /&gt;
filename in namepipe '\\.\pipe\women' client retry=30;&lt;BR /&gt;
 &lt;BR /&gt;
data female;&lt;BR /&gt;
   infile in;&lt;BR /&gt;
   input name $ age;&lt;BR /&gt;
proc print;&lt;BR /&gt;
run;&lt;BR /&gt;
 &lt;BR /&gt;
signoff p1;&lt;BR /&gt;
endsas;&lt;BR /&gt;
[/pre]</description>
      <pubDate>Tue, 20 Jan 2009 14:12:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69754#M20072</guid>
      <dc:creator>deleted_user</dc:creator>
      <dc:date>2009-01-20T14:12:36Z</dc:date>
    </item>
    <item>
      <title>Re: Proc ROBUSTREG</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69755#M20073</link>
      <description>Don't know what I was doing wrong for the last two days, but having restarted from the bottom up from the example in the SAS documentation has worked, and I can now work on parsing the ROBUST REG output.&lt;BR /&gt;
 &lt;BR /&gt;
Here's the relevant code for posterity sake and other people to learn from.&lt;BR /&gt;
 &lt;BR /&gt;
[pre]&lt;BR /&gt;
signon p1 sascmd='!sascmd' wait=no signonwait=no;&lt;BR /&gt;
rsubmit p1  wait=no ;&lt;BR /&gt;
 &lt;BR /&gt;
options source source2;&lt;BR /&gt;
 &lt;BR /&gt;
filename outp namepipe '\\.\pipe\robustreg' server retry=30; &lt;BR /&gt;
filename outp list;&lt;BR /&gt;
 &lt;BR /&gt;
data suzzyQ;&lt;BR /&gt;
*  do i = 1 to 162;&lt;BR /&gt;
  do i = 1 to 1;&lt;BR /&gt;
*  do j = 1 to 500;&lt;BR /&gt;
  do j = 1 to 1;&lt;BR /&gt;
*  do dow = 1 to 7;&lt;BR /&gt;
  do dow = 1 to 1;&lt;BR /&gt;
    do timestamp = '00:00:00't to '23:59:59't by '00:15:00't;&lt;BR /&gt;
      do x=1 to 25;&lt;BR /&gt;
        y=0.03 + (x+ranuni(0)/1000);&lt;BR /&gt;
        output;&lt;BR /&gt;
      end;&lt;BR /&gt;
    end;&lt;BR /&gt;
  end;&lt;BR /&gt;
  end;&lt;BR /&gt;
  end;&lt;BR /&gt;
  format timestamp time.;&lt;BR /&gt;
run;&lt;BR /&gt;
 &lt;BR /&gt;
proc printto print=outp new;&lt;BR /&gt;
run;&lt;BR /&gt;
 &lt;BR /&gt;
proc robustreg data=suzzyQ outest=_estimates_;&lt;BR /&gt;
  by i j dow timestamp;&lt;BR /&gt;
    model y=x;&lt;BR /&gt;
    output out=stuff leverage=leverage outlier=outlier p=predicted r=residual sr=sresidual stdp=stdp;&lt;BR /&gt;
run;&lt;BR /&gt;
quit;&lt;BR /&gt;
 &lt;BR /&gt;
proc printto print=print;&lt;BR /&gt;
run;&lt;BR /&gt;
quit;&lt;BR /&gt;
 &lt;BR /&gt;
filename outp clear;&lt;BR /&gt;
 &lt;BR /&gt;
endrsubmit;&lt;BR /&gt;
 &lt;BR /&gt;
 &lt;BR /&gt;
filename inp namepipe '\\.\pipe\robustreg' client retry=30;&lt;BR /&gt;
filename inp list;&lt;BR /&gt;
 &lt;BR /&gt;
data retrieved;&lt;BR /&gt;
  length ll 8 line $256;&lt;BR /&gt;
  infile inp length=l;&lt;BR /&gt;
  ll = l;&lt;BR /&gt;
  input line $varying80. ll;&lt;BR /&gt;
  line = compbl(line);&lt;BR /&gt;
run;&lt;BR /&gt;
quit;&lt;BR /&gt;
 &lt;BR /&gt;
proc printto print='retrieved.lst';&lt;BR /&gt;
run;&lt;BR /&gt;
proc print data=retrieved;&lt;BR /&gt;
run;&lt;BR /&gt;
proc printto print=print;&lt;BR /&gt;
run;&lt;BR /&gt;
 &lt;BR /&gt;
signoff p1;&lt;BR /&gt;
 &lt;BR /&gt;
 &lt;BR /&gt;
endsas;&lt;BR /&gt;
[/pre]</description>
      <pubDate>Tue, 20 Jan 2009 16:01:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/69755#M20073</guid>
      <dc:creator>deleted_user</dc:creator>
      <dc:date>2009-01-20T16:01:12Z</dc:date>
    </item>
    <item>
      <title>Re: Proc ROBUSTREG</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/279252#M58977</link>
      <description>&lt;P&gt;You can exclude&amp;nbsp;the output without using a NOPRINT which disables the Output Delivery System (ODS) by bracketing your code with the folllowing two statements:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;ODS LISTING CLOSE;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;. . . procedure code goes here . . .&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;ODS LISTING;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This is the "ODS way" to do a NOPRINT.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Furthermore, you can use an ODS OUTPUT statement to then output any portion of the output to a SAS data set. Look under the Details =&amp;gt; ODS Table Names in the documentation for the correct tablename, e..g. - - &lt;A href="http://support.sas.com/documentation/cdl/en/statug/68162/HTML/default/viewer.htm#statug_rreg_details42.htm" target="_blank"&gt;http://support.sas.com/documentation/cdl/en/statug/68162/HTML/default/viewer.htm#statug_rreg_details42.htm&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The syntax for an ODS OUTPUT statement, for example is:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;ODS OUTPUT GoodFit=GF;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;where "GoodFit" is an ODS Table Name listing in the documentation and "GF" is a SAS data set name (your choice here).&amp;nbsp; Then you can operate on the SAS data set "GF" just as you would any other SAS data set.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I hope that helps.&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>Wed, 22 Jun 2016 09:16:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-ROBUSTREG/m-p/279252#M58977</guid>
      <dc:creator>OsoGris</dc:creator>
      <dc:date>2016-06-22T09:16:05Z</dc:date>
    </item>
  </channel>
</rss>

