Release Notes for S-Plus 7.0.6 for UNIX/Linux (December 2005)
These release notes are current as of December 2005.
This file contains the following information:
· Changes to Language Functions
· Supported Platforms and System Requirements
· Using S-PLUS for UNIX from a Windows Desktop
· Contact Information for Feedback
S-PLUS 7 is a major release of the S-PLUS Product
Family, with a focus on providing a robust environment for creating statistical
applications applied to very large data sets. S-PLUS 7.0.6 is a maintenance
update, providing fixes to bugs discovered after the release of S-PLUS 7. This
maintenance update also includes enhancements related to data import and
export, which were implemented in S-PLUS 7.0.5.
NOTE
S-PLUS 7.0.5 was a
version of the S-PLUS language engine that shipped only with Insightful Miner
7. It was not available as an independent patch to S-PLUS. Changes between
S-PLUS 7.0.5 and S-PLUS 7.0.6 are ancillary bug fixes to S-PLUS. For more
information, see Bugs Fixed in S-PLUS 7.0.5 and 7.0.6.
S-PLUS 7.0.4 was a Windows-only release.
S-PLUS 7 is available in two editions: S-PLUS 7 Professional Developer and
S-PLUS 7 Enterprise Developer, and improves upon S-PLUS 6.2 in the following
areas:
Available in S-PLUS
· Big Data Library
· S-PLUS Eclipse Workbench Developer Tools
Available in S-PLUS 7
· New correlatedData library
· Improvements to timeSeries objects
· FLEXnet license management system
· New functions and other minor new capabilities
There are also a number of enhancements
to existing functions, and improvements to quality in several areas.
S-PLUS 7 includes support for the following S-PLUS modules. These modules are unchanged in S-PLUS 7.0.6.
These modules require a license to use.
|
Module |
Version |
Platform |
|
|
2.0.4 |
Windows |
|
|
2.0.1 |
Windows, Solaris, Linux 32-bit |
|
|
1.6.2.0b |
Windows, Solaris, Linux 32-bit |
|
S+Wavelets |
2.0.2 |
Windows, Solaris, Linux 32-bit, HP, and AIX |
|
S-PLUS for ArcView GIS Link |
1.1.1 |
Windows |
|
|
2.0.3 |
Windows |
|
|
2.0.3 |
Windows |
|
|
1.5.7 |
Windows, Solaris, Linux 32-bit, HP, AIX |
The following modules have not been changed.
· S-PLUS for ArcView GIS Link
·
·
·
Before starting S-PLUS, you must do the following:
1. Set
your DISPLAY environment variable to your local machine, if necessary.
2. Create an S-PLUS chapter to contain your work.
To use the Java related features of S-PLUS, you must be able to connect to your local X window server. Thus, you must have the environmental variable DISPLAY set and the X window server on your local machine must allow the S-PLUS server to create windows on your machine; see the UNIX programs xauth or xhost. Typically, if you can run xclock on your machine, then S-PLUS should also be able to access the X server.
To set your display from a C-like shell (csh, tcsh, etc.), use the setenv command:
% setenv DISPLAY <display_name>
where <display_name> is the name of your local machine. From the Bourne- and Korn-like shells (including sh, ksh, bash, etc.), use the following commands:
% DISPLAY=<display_name>;export DISPLAY
You do not need to do this if your DISPLAY variable is set already; check the output from echo $DISPLAY to be sure.
Creating an S-PLUS chapter is necessary for storing the data objects and external files you create in S-PLUS. The following commands create an S-PLUS chapter named mysplus for you to work in (be sure you do not have a mysplus directory in your home directory before typing these commands).
% cd
% mkdir mysplus
% cd mysplus
% Splus CHAPTER
If you do not create a chapter, S-PLUS automatically creates one for you named MySwork the first time you start S-PLUS.
You are now ready to start S-PLUS. S-PLUS may be launched in a variety of modes. The following table lists each UNIX command-line expression and the corresponding mode for launching it. In all of the commands below, Splus refers to the script you use to launch S-PLUS 7 on your system.
|
Command-line Expression |
S-PLUS Mode |
|
% Splus |
S-PLUS command line without Java. |
|
%
Splus –j |
S-PLUS command line supporting Java calls, Java graphics, and the Java help
interface. |
|
%
Splus –bigdata |
S-PLUS command line with the Big Data library. (Enterprise Developer
edition only.) Also loads Java. |
|
%
Splus –g |
S-PLUS graphical user interface. |
|
-helpoff |
S-PLUS without the automatic invisible startup of the help system.
The -helpoff
flag is useful only with the -g flag. |
|
% Splus –w |
S-PLUS Workbench, the Eclipse IDE plug-in that provides a work environment
integrated with S-PLUS (Enterprise Developer edition only). Note that the
S-PLUS Workbench is not supported on HP-UX. |
|
% Splus -w –bigdata & |
Loads the S-PLUS Workbench and
the big data library. |
S-PLUS 7.0.6 includes bug fixes in S-PLUS 7.0.5, which was included with Insightful Miner 7, and bug fixes since S-PLUS 7.0 was released. For more detailed information, see the section Bugs Fixed in S-PLUS 7.0.5 and 7.0.6 or the file SHOME/FIXEDBUG.TXT, included on the product CD.
Support for
reading and writing longer strings
S-PLUS 7.0.6 now supports reading and
writing longer strings for a variety of data types. These improvements include
the following:
|
Data
Type |
Import character string length (max)* |
Export character string length (max) |
|
ASCII |
32K
|
32K |
|
Oracle-Direct |
3999 (varchar2) 2000 (nchar) 1000 (nvarchar2) |
< 4000 (varchar2) >= 4000 (CLOB) |
|
Oracle
via ODBC* |
1999
(char) 2000 (nchar) 1000
(nvarchar2) |
<=
255 (char) > 255 (long) |
|
Excel |
32K |
32K |
|
Access 2000 |
32K Memo field |
32K Memo field |
|
SQL Server 2000-Direct |
4096 (TXT) 255 (varchar -DRIVER ISSUE) 255 (nvarchar) 255 (char) 255
(nchar) |
< 8000 (varchar) >= 8000 (text) |
|
SQL Server 2000 - ODBC |
7999 (TXT) 7999 (varchar) 3999 (nvarchar) 7999 (char) 3999 (nchar) |
<=
255 (varchar) > 255 (text) |
*Note the following issues for writing long strings:
· Oracle-Direct: If you have two or more columns of long strings, either with strings over 1,333 characters, S-PLUS writes empty rows to the database.
· Oracle via ODBC: If you have two or more columns of long strings, either with strings over 255 characters, S-PLUS writes empty rows to the database.
· SQL Server 2000 Direct: If you export data with strings over 255 characters, the string is truncated. The longer the string, the greater the truncation. For example, for strings of length 3999, they are truncated and inserted into the database as 159-character strings. For strings of length 7999, they are truncated and inserted into the database as 63-character strings.
· DB2: Previously, S-PLUS created fixed-length strings when exporting data to a DB2 database; however, this design did not allow for long strings to be exported. Now, when you export data to a DB2 database, S-PLUS creates the columns as varchar, rather than CHAR, to accommodate up to 32,672 characters in a string.
S-PLUS now supports importing and reading 64-bit SAS files and compressed SAS files.
S-PLUS 7.0.3 includes and bug fixes since S-PLUS 7 and 7.0.2 were released. For more detailed information, see the section Bugs Fixed in S-PLUS 7.0.3 or the file SHOME/FIXEDBUG.TXT, included on the product CD.
S-PLUS 7 includes a variety of new features that extend S-PLUS capabilities. Major additions include:
·
New Big Data Library (
·
S-PLUS Eclipse Workbench
Developer Tools (
· New Model Type: Cox Mixed Effects Models
· timeSeries Object Improvements
· New Color Scheme for Graphics Devices
· Higher Quality Graphlet Printing Capability
This section briefly describes these new features and other enhancements.
(
For details about loading the Big Data library, see Running S-PLUS. The Big Data library is not loaded by default when you start S-PLUS from the S-PLUS Workbench or as a console application. Always load the Big Data library if you work with big data projects. (If you start a big data project without having loaded the Big Data library, you will see errors when you run your script.)
Find help for the Big Data library in the Enterprise Developer User’s Guide, found in the PDF file eduserguide.pdf, which is available in the SHOME/doc directory. Help for individual functions are integrated in the language help.
You must set your DISPLAY environmental variable before you start S-PLUS with the Big Data library loaded. For information on setting the DISPLAY variable as well as the available options for running S-PLUS, see the section Running S-PLUS.
(
Find help for the S-PLUS Workbench in the S-PLUS User’s Guide, Chapter 8, which is available in the PDF file unixug.pdf, which is available in the SHOME/doc directory. Alternatively, in the S-PLUS Workbench, click Help > Help Contents, and then in the Help UI, click S-PLUS Help.
In response to demand from commercial customers seeking an industry-standard system for managing software licenses, the S-PLUS Product Family now uses the FLEXnet system from Macrovision (previously known as FlexLM) for license management. The interface for managing licenses and monitoring license usage will be familiar to many systems administrators, and offers a much greater degree of flexibility and reliability than the license management system used in previous releases of S-PLUS.
Note that all editions of S-PLUS require a license. Further information about the license management system can be found in the Installation and Administration Guide, which is available in the SHOME/doc directory.
This library compares favorably to elements of SAS PROC GENMOD, PROC MIXED and the GLIMMIX macro. It has significant applications in life sciences, finance and other markets. In life sciences, for example, its use is particularly relevant in the clinical development area. Load the correlatedData library by entering the following in the Commands window:
>library(correlatedData)
Use the following new functions to compute minimum, maximum, or range by row or column. These functions are much faster than using an apply() call:
colMins
colMaxs
colRanges
rowMins
rowMaxs
rowRanges
·
Use the
new function allTrue in combination with all.equal for writing automated tests to be called by do.test.
·
Use the
new function expectWarnings to write your own automated tests (i.e., to be run using "do.test"). Using expectWarnings, you can suppress unavoidable warnings and
test that warnings your functions should produce do occur. (This function has
no help topic in this release.)
·
Use the
new function pedigree for support for pedigree plotting. See its help topic in the Language Reference
for more information.
·
Use the
new function bdsmatrix for support for sparse block diagonal matrix objects. See its Help
topic in the Language Reference for more information.
· Use the new function unname, which removes names or dimnames from a object. This can make calculations run much faster (see example in the help file)
The new function coxme allows you to fit a Cox model with random effects to censored data.
Random effects can be specified with a syntax similar to that used for linear
mixed-effects models with lme().
· More powerful column-wise summary statistics for timeSeries objects are now available:
·
{col, row} {means,
sums, vars, stdevs, mins, maxs,
ranges}
·
col {products, medians, quantiles}
etc.
· New powerful functionalities to compute the length of time series, lags of time series, differences of time series, sort time series, and random sample time series:
·
seriesLength(), seriesLag(),
diff method, sort, sample method
· New function to detect month end dates:
·
is.monthend()
· New method functions for arima modeling and a new arima prediction function:
·
summary, coef, vcov,
residuals, fitted, predict
· New powerful multiple timeDate, bdTimeDate and time series-sensitive subscripting, such as
·
myTimeSeries[ timeEvent( c("1/1/01",
"1/1/02"), c("4/1/01", "4/1/02") ), cols ]
·
myTimeSeries[ timeEvent(
"1/1/01", "1/1/02" ), cols ] <- myNewData
·
Improved
delta t and frequency method for time series to accommodate end of month regular time series
and to be consistent with old style time series classes.
· More functions now work with time series objects:
·
apply, lapply, hist,
density, pmin, pmax, order,
rank, chisq.gof, ks.gof, cdf.compare,
cor.test, var.test, t.test, wilcox.test,
pairs, barplot, boxplot, lsfit,
l1fit, rreg, lmsreg, ltsreg,
location, ms, nls, nnls.fit
cov.mcd, cov.mve, cov.wt, kmeans,
dist, mclust, princomp, factanal,
etc.
· Improvements to plot and trellisPlot (which also apply to signalSeries):
· xlim and ylim are now fully supported (they were not in previous releases).
· You can now use the at and labels arguments to axis.time and axis.numeric (via the x.axis and y.axis arguments to plot and trellisPlot) to override the default axis tick mark positions and labels.
The default colormaps for the various graphics devices have been changed so they all gave a fairly similar result. The color settings were chosen to work well with both ordinary and Trellis style plots.
The main difference is in the image color settings. For color plots, various
shades of blue from light (low values) to dark (high values) are now used. For
black-and-white devices, the shades of gray are now light gray (low values) to
dark gray (high values). All graphics devices now automatically have the trellis.settings
attribute set for them.
To Use Old Color Settings:
|
Graphsheet |
To use the old color settings, for every session, run the following function: stdImageColorSet(blue=F) This must be done in every session because stdImageColorSet(blue=T) is called in the startup file S.init. You can remove the call to stdImageColorSet in S.init; the file is in the top level directory where S-PLUS is installed. Note that this may change for the release. |
|
java.graph
device |
The old colorscheme is available in the list java.colorscheme.standard.6.2.
If you call: java.colorscheme.default <-
java.colorscheme.standard.6.2 all subsequent calls to java.graph
(where the colorscheme argument is not explicitly set) in the current project
directory will use the old colorscheme. If you switch to a different project
directory you will need to create the java.colorscheme.default
object (as shown above) again. |
|
pdf.graph and wmf.graph |
Set the colorspec argument to pdf.colors.6.2
or pdf.grays.6.2
to get the old colormaps. |
|
PostScript device |
You can set the new argument: old.style=T to get the old behavior. A new argument, color.p has been added to the PostScript device. Setting color.p=T (or just color=T) will create color PostScript output using the new colormaps. The default is color.p=F so that postscript will continue to produce black-and-white postscript by default. The behavior and setting of graphics devices
started with the trellis.device function has not changed. |
Changes to the motif device:
A new argument, color, has been added to the motif function. If color=T (the default), then a new default color scheme is used. This color scheme matches the default color schemes for the other devices described above. It has a white background but it still works well with Trellis displays. This new color scheme appears in the Options > Color Scheme ... dialog box (accessed from the motif window) as "Standard".
There is also a new "Standard B&W" color scheme that appears in the Options > Color Scheme dialog box and this scheme is used if you set color=F when calling motif.
The Trellis color scheme has also been added to the list that appears in the Options > Color Scheme. It differs from the color scheme used by trellis.device(motif) only in the image colors - it uses the cyan-white magenta colors instead of a gray scale.
If you have Saved your Color Scheme selection from the Options > Color Scheme dialog box, then it overrides the color argument in the call to motif(). You can avoid this behavior by setting the new argument, ignore.sgraphrc, to T when calling motif(). See the motif help file for more information about settings that get saved in the .sgraphrc file.
Higher Quality Graphlet Printing Capability
The Graphlet code in spjgraph.jar now determines whether the Ggfraphlet is running in a JVM (Java Virtual Machine) that can handle the more-recent Java printing (including rotated fonts), and uses this when printing from the Graphlet Print button. In particular, plot labels print much better; the previous code caused the characters to print with "jagged" edges.
If the JVM is old (such as the default Microsoft JVM in Internet Explorer), then the printing is the same as before. To get the new printing, you will need the Java Plug-in.
For comparison purposes, you can get the old printing behavior (even with a new JVM) by specifying the applet property:
<PARAM
NAME=spjgraph.graphics.2d VALUE=FALSE>
The new printing code uses a new Print dialog box, where the printer is specified with a separate Printer button.
The changed code affects only the print quality when you use the Graphlet Print button to print the contents of the Graphlet. It does not improve the print quality when you print a whole browser page that includes a Graphlet. We believe this is because of the way that browsers handle printing Java applets (and therefore is beyond our control).
For example, try printing out the page
http://www.insightful.com/products/Graphlets/gallery/TestJavaApplet.asp
which contains a simple applet drawing a box with crossed lines. In the printed page, the diagonal lines print characters with "jagged" edges.
IO
·
Changed the default for options()$time.out.format from
"%02m/%02d/%Y
%02H:%02M:%02S.%03N"
to
"%02m/%02d/%04Y
%02H:%02M:%02S.%03N"
This highlights errors where example datasets reported the wrong year.
·
importData
now supports access to self-authenticating Oracle accounts. For example:
importData(type="ORACLE",
server="ORACLE.DBNAME", table="TABLENAME",
password="self")
imports the table "TABLENAME"
from the specified server.
Note: You must specify password="self" to use the
self-authenticating feature.
Language
· dim for the timeSeries or signalSeries object now returns matrix dimensions.
· The help file for deprecated functions has been updated.
· Trellis graphics now allow the change of cex in tick mark labels on the x and y axis. For example, dotplot(formula,cex=2) affects only font size within panels, but not on the axis.
· The function match.path() was added. This function determines whether two paths refer to the same item.
· Added "GDT" (GMT daylight time) to the time zone list. Otherwise converting date() to timeDate() returns NA.
· You can now set the entire contents of a timeSeries to one value.
· The function anyMissing() is now available in the core product. Previously, it was available only in the Missing library.
· try() now supports nesting calls.
· The methods [[, [<-, and [[<- are now supported for numericSequence objects.
· A new argument, align.by, has been added to aggregateSeries
· casefold follows locale when you switch cases of letters.
· A new feature was added in aggregateSeries to include the left endpoint of each bin.
Statistics
·
Addition of multicomp
method for lme, multicomp.lme,
as part of distributed
S-PLUS.
· lme function now drops unused levels.
· density includes the new feature of expanded variety of bandwidth selection rules.
For a list of the bugs
fixed in this release, see FIXEDBUG.TXT.
The "link" and "var" for the quasi() family are not used properly in bdGlm().The fitted model,
and/or the deviance, does not match the results from glm().
bdGlm fails when creating an S-PLUS list from XML with intercept-only model. glm(plants~1, data=as.bdFrame(guayule))
Incorrect results with "cloglog" link and either the binomial
or quasi
family.
The contrasts argument is ignored when creating the model
matrix, so the default contrasts are always used.
Using the bdGlm function with a binomial
family and the weights argument returns incorrect null.deviance
output.
Using the bdGlm function with any family, and with no intercept fit, returns incorrect