S-Plus 6.0 for Windows/UNIX
By Rich Herrington, Research and Statistical Support Services
This month we review some of the results of beta testing for the as yet unreleased version of S-Plus for Windows and UNIX. This release of S-Plus marks the convergence of the version numbering for both Windows and UNIX platforms, S-Plus version 6.0.
The most substantial improvement for the UNIX version is the drop down menu system based on JAVA. Most of the Statistics menu items that were present for the Windows version are present in the UNIX version. However, the Data menu option in Windows which displays data manipulation operations is not present in the UNIX GUI. These operations must still be carried out by commands in the command window. The UNIX GUI is displayed below:
There are major organizational differences as well. The familiar Object Explorer is missing from the UNIX GUI. Also the ability to generate and save S-Plus commands into a History window is also missing. The Windows S-Plus GUI hasn't changed substantially, retaining most if not all features introduced in earlier versions. The Windows GUI is displayed below:
S-Plus for UNIX gives users a spreadsheet view of all objects available to the work session. While not as convenient as the "tree" view that the Windows version provides, it is better than a simple listing of objects from the command prompt. The UNIX Objects Summary Window is displayed below:
Integration with Java
This version of S-Plus uses the latest Java code from Sun Microsystems as well as Sun's emerging JavaHelp system. Users have the ability to call S-Plus from a Java application and users can call a Java application from within S-Plus. Additionally, S-Plus 6.0 uses Java classes for S-Plus vector and matrix objects.
Graph editing in UNIX does not provide the "in place" graph editing that is available in the Windows version. However, export filters in UNIX are available that allow one to export graphs into JPEG, TIFF, PNG, PNM, and BMP formats. Additionally, data import and export filters in the UNIX version are limited to ASCII, DBASE, EXCEL, FASCII, GAUSS, HTML, LOTUS, Matlab, QUATTRO, SAS, SPSS, STATA, and SYSTAT. The Windows version provides these data import/export formats as well as FoxPro, Informix, Lotus, Minitab, Microsoft Access, Microsoft SQL, Oracle, Paradox, and Sybase SQL.
Large Dataset Support
Perhaps the most important enhancement is the continuing refinement of S-Plus's memory management. S-Plus has improved its performance by reducing memory requirements to many common operations. A 64-bit version of S-Plus 6.0 for UNIX is available for Solaris. This version allows enhanced processing speed while supporting larger data sets. Large data objects are now memory-mapped, which reduces the amount of swap space required to run S-Plus. These data objects are "reference-counted" so that fewer copies of data objects are created and stored. For the Windows version, specifications that shipped with the beta versions claim that in typical data analysis applications, S-Plus makes 60% fewer copies than S-Plus 2000.
Two new libraries have been added to S-Plus - library "robust" and "missing". Library Robust offers a wide selection of robust techniques. These new functions provide: improved robust regression for the linear model, robust ANOVA, robust poisson and logistic generalized linear models, robust covariance and correlation matrix estimation, new plots for outlier detection and comparing fits, and new multiple model fits and comparisons paradigms. Library Missing provides three different multiple imputation models: Gaussian, Logistic, and Conditional Gaussian. Library Missing uses a model-based approach with model fit by EM methods and data augmentation algorithms (Gibbs sampler). The data augmentation algorithms produce multiple imputations; users may sue their own routines for creating multiple imputations. The library includes capabilities for performing arbitrary analyses "in parallel" on multiple completed data sets, and combining numerical results in a way that reflect the additional uncertainty due to missing data.
Major updates have been made to the Survival Analysis Tools in S-Plus. Other major updates include the latest advances in linear and non-linear mixed effects models (NLME).
New Language Enhancements
The class mechanism is completely different from that of earlier versions of S-Plus, and there are many changes to many fundamental functions. The down side of this is that the new S-Plus language architecture is not completely backward compatible with earlier versions of the language. Most examples from earlier books on S and S-Plus should run without modification. However, data objects created with S-Plus 6.0 are different from objects created with S-Plus 2000 and earlier. All objects now have a class, including atomic objects such as vectors and matrices. This extensive support includes new functions for creating classes and methods. To help with the conversion over to the new language specifications, S-Plus 6.0 includes tools that help update S programs written in older versions of S-Plus.
S-Plus for Windows displays a faster response from the graphical user interface. This was quite a noticeable difference, as prior versions were quite slow.
Supported Platforms and System Requirements
S-Plus 6.0 is supported on Windows 95 and Windows 98; Windows NT 4.0 and Windows 2000 running on Intel platforms. S-Plus 6.0 for UNIX is supported on Solaris, Linux, HP, and SGI. The minimum recommended system configuration for Windows platforms is a Pentium II/233 with 96MB of RAM. You must have at least 125MB free disk space for the typical installation. A complete install requires 230MB of free disk space. It is recommended for S-Plus on Linux/Intel platforms that the minimum system utilize 48MB of RAM, 16-bit color mode, KDE and KWM window managers. Sun Microsystems, Inc. has tested S-Plus 6.0 using Red Hat Linux 6.0.
On the whole I was pleased with the performance of both UNIX and Windows platforms. Substantial speed and memory improvements have made using S-Plus as a general statistical analysis package a viable alternative to SAS or SPSS. For the most part, the addition of the "robust" and "missing" libraries have made S-Plus a more complete base package than SPSS or SAS as these packages offer the same functionality as separate costly add-ons. While the UNIX GUI is still in its early stages, it removes a stumbling block for the "point-and-click" crowd in using S-Plus on powerful UNIX architectures. Clearly, S-Plus excels in robust methodology and in graphical rendering as compared to SAS and SPSS. Future RSS columns will explore this new functionality that S-Plus provides in the months to come.