[R] New utility: sas2r

About this list Date view Thread view Subject view Author view Attachment view

From: Rolf Poalis (rolf@biostatistics.dk)
Date: Thu 01 Apr 2004 - 15:19:49 EST


Message-id: <20040401051949.GA1195@ekstroem.dk>

Dear R users,

Biostatistics Denmark would like to annouce the availability of the
new utility: sas2R --- a SAS to R parser.

For almost 40 years SAS has been the primary tool for statisticians
worldwide and its easy-to-learn syntax, unsurpassed graphical system,
powerful macro language and recent graphical user interfaces have made
SAS the number one statistical software choice for both beginners and
advanced users.

We find it unnecessary for users to learn yet another statistical
software package and have decided to make SAS available to a larger
audience by providing a SAS interface to the free statistical software
package R. It is our hope that the sas2R utility eventually will prove
as powerful as the true SAS system and we believe that this release
marks the beginning of a new era for R.

The sas2R utility consists of a parser (written in perl) that rewrites
the SAS code as R code and a package (sastor) of utility functions
that are needed to run the parsed code. sastor consists mainly of
functions for presenting output in the familiar and canonical SAS
format.

Download the utility at: http://www.biostatistics.dk/sas2r/index.html

Example: The following SAS code:

DATA test;
    INPUT x y f$;
    CARDS;
    1 2 m
    1 3 m
    2 4 m
    2 4 f
    1 5 m
    4 3 f
    3 2 f
;

PROC PRINT DATA=test;
  VAR x;

PROC REG DATA=test;
  MODEL y = x;

RUN;

        
is converted to

library(sastor)
test <- data.frame(x = c(1, 1, 2, 2, 1, 4, 3), y = c(2, 3, 4, 4, 5, 3, 2), f = c("m", "m", "m", "f", "m", "f", "f"))
sas.print.print(test[, c("x"), drop=F])
sas.print.reg(lm(y ~ x, data=test))

which produces the following output:

The SAS2R System

Obs x
1 1
2 1
3 2
4 2
5 1
6 4
7 3

The SAS2R REG Procedure

Analysis of Variance

Dependent Variable: y
                Df Sum Sq Mean Sq F value Pr(>F)
Model 1 0.5000 0.5000 0.3608 0.5742
Error 5 6.9286 1.3857
Corrected Total 6 7.4286 1.8857

Root MSE 1.17716 R-Square 0.0673
Dependent Mean 3.28571 Adj R-Sq -0.1192
Coeff Var 35.82672

Parameter Estimates:
            DF Estimate Std. Error t value Pr(>|t|)
(Intercept) 1 3.7857 0.9438 4.011 0.0102 *
x 1 -0.2500 0.4162 -0.601 0.5742

Here is the DESCRIPTION file for the package:

Package: sas2r
Version: 1.04
Title: SAS-to-R parser
Author: Rolf Poalis <rolf@biostatistics.dk>
Maintainer: Rolf Poalis <rolf@biostatistics.dk>
Description: A collection of functions for running SAS code in R.
Depends: R (>= 1.4.0), perl >= 5.8.0
License: GPL
URL: www.biostatistics.dk/sas2r/index.html

The following SAS procedures are parsed succesfully:

PROC CONTENTS
PROC CORR
PROC FREQ
PROC GLM
PROC MEANS
PROC NPAR1WAY
PROC PRINT
PROC REG
PROC SORT
PROC TTEST
PROC UNIVARIATE

The following SAS procedures work to some degree:

PROC GENMOD
PROC GPLOT
PROC MIXED

Please note:

o All SAS procedure calls must include a DATA=

We look forward to receiving questions, comments and suggestions.

Rolf Poalis, Biostatistics Denmark

______________________________________________
R-help@stat.math.ethz.ch mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html


About this list Date view Thread view Subject view Author view Attachment view

This archive was generated by hypermail 2.1.3 : Mon 03 May 2004 - 18:41:17 EST