R (current version: 2.7.2)
This list includes significant changes
that affect the material described
in the text (which is based on version 1.3.1 of R).
Changes
to the current version of R and to the
Windows version of R are available on the CRAN (Comprehensive R Archive
Network) web site. There have been important developments in R that are not
reflected in the list below.
- The hist function in R now supports several rules for determining
the number of bins in a historgram, making the n.bins function
in the car package redundant. (I've left n.bins
in car for compatibility
with the text.)
- S4-style classes and methods have been implemented in the form of a
new methods package, which
is part of the basic R distribution and is attached to the search path
at start-up, together with some changes to the R system. S3-style classes
and methods still work. Enter the command help("Methods")
for some information on S4-style methods in R.
- Some other small changes have been made to make R more compatible with
S4, including use of =
(the equals sign) for assignment (which I still believe is to be discouraged).
Likewise, there is an implementation of the logb
function (log to a base), which in R is identical to log.
- The lattice package for Trellis graphics (and the grid
package, on which it depends) are now included as recommended packages
with the standard R distribution.
- The piechart function in R is no more,
replaced by the similar function pie. The
color and gray-scale wheels described in Section 7.1.3 can be generated
using pie.
- Version 1.6.2 introduced name spaces into R, which potentially
affect how references to variables and functions are resolved. In particular,
if (as is now the case, e.g., with the base
package) a package defines a name space, then the interpreter will look
for an object in that name space prior to consulting the global environment
and the remainder of the search path. This means, for example, that a
function defined in the working data will not shadow a function of the
same name in the base package, as was previously
the case, when one function in the base
package calls another. Name spaces also provide a sophisticated mechanism
for controlling which objects defined in a package are visible and usable
outside of the package. Name spaces in R are documented in a working
paper and in an article
in R News, both by Luke Tierney. Also see the Writing R Extensions manual, which comes with the standard R distribution.
- The solve function no longer provides
a least-squares fit to overdetermined systems of equations with a rectangular
coefficient matrix, but rather reports an error.
- If the logical argument to if contains
more than one element, the first element still controls the result, but
now a warning is printed.
- The underscore ( _ ) can no longer be
used as an assignment operator (it was, in my opinion, never desirable
to do so), and now can be used in object names (though not as the initial
character in a name).
- The base package has
been divided into several packages: base,
datasets, graphics,
grDevices, stats,
and utils. The contents
of the former ctest, eda,
modreg, mva,
nls, stepfun
and ts packages are now
in stats. These changes
will be transparent in most circumstances since all of the packages mentioned
are loaded (along with the methods
package) at start-up.
- The attach function indicates
when objects on the search path are shadowed (masked) by objects in a
newly attached data frame.
- In the Windows version of R, the Rprofile
file in R's etc subdirectory
is now called Rprofile.site
(as it is in non-Windows versions of R).
- R now permits "lazy loading" of data sets in packages, obviating the need for the data() command in packages so equipped. The car package now supports this facility, so, e.g., one can attach(Duncan) without first issuing the command data(Duncan).
- There are many small changes to the car package -- mostly additions and bug fixes that do not alter the material in the text. See the Changes file for the package.
S-PLUS (last version examined: 8.0)
Northing yet. (There are new features in version 8.0, perhaps most notably
facilities for handling very large data sets, but they do not concern material
described in the text, which references version 6.0.)