R-0.99.0 is released
Peter Dalgaard BSA
p.dalgaard at biostat.ku.dk
Mon Feb 7 13:56:24 CET 2000
I've rolled up R-0.99.0.tgz a moment ago.
You can get it from
ftp://cvs.r-project.org/pub/CRAN/src/base/R-0.99.0.tgz
or
http://cvs.r-project.org/pub/CRAN/src/base/R-0.99.0.tgz
or wait for it to be mirrored at a CRAN site near you within a day or two.
There's also a version split in three (!) for floppies if you prefer
that.
The next release is to be 1.0.0 at the end of this month, and you may
consider this as a prerelease of that. I.e. this is your chance to
help us making version 1.0.0 as bug-free as possible.
Notice that GNOME support is still experimental. In particular,
plotting of mathematical formulas is pretty much out of whack at the
moment.
For the R Core Team,
Peter D.
Here's the relevant bit of the NEWS file:
CHANGES IN R VERSION 0.99.0
NEW FEATURES
o The ``Introduction to R'' manual, in doc/manual.
The ``Writing R Extensions'' manual is much enhanced for
this release.
o The format for save/load has been changed. Workspaces and
objects saved in earlier versions can be loaded into this
version, but not conversely. Use save() or save.image() with
argument oldstyle=TRUE to save in the old format if you need to.
o The header files for C code have been reorganised. The
preferred header file for user code is now "R.h", and
ancillary files such as Arith.h now need to be referred to
as "R_ext/Arith.h". The `Writing R Extensions' manual now
contains the beginnings of a description of the public API and
how to use it.
o Many of the exported symbols have been remapped or hidden. This
means that code using Rdefines.h or Rinternals.h or Mathlib.h
will need to be re-compiled, and code using Applic.h may do
so.
Many packages will need to be re-installed for use with this
release.
o The random number generation interface has changed, although
saved .Random.seed's will work unchanged. The default
generator is now Marsaglia's multicarry, and the Mersenne
Twister GFSR and Knuth's Fibonacci subtraction are also
available. The type of normal generation can be selected by
RNGkind() (and is encoded in .Random.seed).
The new function set.seed() which uses a single integer to set
the random number seeds is now the recommended way to do so.
It is now possible for a user to plug-in in a new RNG written
in C: consult ?Random and ?Random-user for the details.
o All the DPQ {probability density quantile} functions have new
arguments, "lower_tail = TRUE" and "log{_p} = FALSE". This allows
more precise results when values would be close to 0 or 1.
o R CMD Rd2dvi has new options --pdf, --title and --output.
o New fields Date, URL and Title in the DESCRIPTION file of
packages. The Title field replaces the separate TITLE file of
packages, which is no longer necessary.
o residuals.lm() has a "type" argument, as S does.
o The underlying code for nlm has been translated from Fortran
to C and made re-entrant (changes contributed by Saikat DebRoy).
o optimize() can now be used recursively.
o New suite of optimization methods optim(), covering
Nelder-Mead, BFGS quasi-Newton and conjugate-gradients methods
for unconstrained minimization and maximization with and
without derivatives.
optim() also allows box constraints (interval bounds on
individual variables) in its limited-memory BFGS option.
o R now compiles in the GNU version of regex, so regular
expressions (grep, sub, gsub, regexpr, "pattern" in ls) are
always available. The class of regular expressions supported
is now slightly wider on some Unix platforms.
o package ctest (for classical tests) is now part of the base
distribution, and also contains chisq.test, prop.test and
t.test which previously were in package base. These three
functions are auto-loaded from ctest.
o New utility `R CMD build' for building add-on packages along
with some useful testing and cleaning up.
o Conversion of .Rd help files to text format is done in Perl,
and no longer requires nroff. This makes the conversion 8-bit
clean and more accurate.
o Building help for a package now removes help files that no
longer exist in the source.
o strsplit() now uses split regexps, and no longer insists on
splitting into non-empty tokens.
o Long-named options with arguments such as `--vsize' now use the
`--name=VALUE' form; the old `--name VALUE' is deprecated.
The old-style command line options `-v' and `-n' are now defunct.
o par("cxy") { == par("cin")/par("pin") in user coordinates}
for S compatibility.
o If R_PAPERSIZE is not specified otherwise, configure now tries
to compute it by calling paperconf.
o The deprecated alternative RPROFILE is no longer accepted: use
R_PROFILE instead.
o Added setequal() for set equality.
o First argument renamed to "package" for library(), require(),
provide().
o model.frame() now accepts data= arguments that can be coerced to
data frames.
o Help files can now contain \describe groups.
o Hyperlinks in help files can now use LaTeX special characters.
o rstandard() now also works for glm objects.
o glm drops 0-weight observations when fitting so that the
output is compatible with lm.influence() and plot.lm().
o New function ftable() for creating and manipulating flat
contingency tables.
o New function cutree() for cutting hclust trees in package
mva. New functions rect.hclust() and identify.hclust().
o Under Unix, the default editor is obtained from the environment
variables EDITOR or VISUAL if either is set.
o New command line option `--gui' to specify the graphical user
interface under Unix. Currently, possible values are `X11' (the
(default) and `GNOME', provided that GNOME support is available.
Command line options \`-g' and `--gnome' are defunct.
o power.t.test() and power.prop.test() functions added for power and
sample size calculations.
o edit() is now generic and a new edit.data.frame() function
calls up the spreadsheet data editor. This is still rather
rudimentary, since the data editor really only knows about
numeric and character vectors.
o Modifications to the data editor so that one can use ESC to
quit a partial cell entry and entering an empty cell causes
the element to be set to NA.
o prop.table() and margin.table() functions (these are *really* trivial).
o R INSTALL checks the Depends field of DESCRIPTION if the
currently running version of R meets an R
dependency. old.packages() reports only packages conforming
to the current version of R. New function
package.dependencies() for parsing and checking dependencies.
o options("expressions") now does something, and the evaluation
depth is checked on all platforms (not just Macintosh). This
will catch infinite recursions gracefully.
o The default number of cons cells (`nsize') is now 350k (it
was 250k). This reflects the added base code and packages,
and increases memory usage by about 2Mb (on a 32-bit machine).
o Some simple multiple comparison procedures: p.adjust() for
generic adjustment of a set of p values by variants of the
Bonferroni method; pairwise.t.test, pairwise.wilcox.test,
pairwise.prop.test for pairwise comparisons of grouped data
and proportions.
o Error / warning calls with a long description of the call are
split into two lines. (This helps avoid scrolling in the
Windows GUI.)
o lapply() is now internal and substantially faster (7% overall
speed-up on the tests for the base package).
o apply() no longer names the output dimensions unless FUN returns
a result with names, and the same names for every result.
o contour() can (at last) label contours by level.
o persp() labels its axes.
o scan() and read.table() now have a dec= argument to set the
decimal point character. If sep= is set, quoting of strings is
now possible and follows the conventions for comma-separated
files. This should make it easier to read the "continental
CSV" format (fields separated by semicolon and using comma as
decimal point). The set of quoting characters has also been
made optional. Variants of read.table(), read.csv() and
read.csv2() have been defined
o HDF5 support is gone from the R distribution, and provided by an
add-on package available from CRAN.
o New function getOption() for retrieving the value of a single
option.
o read.table.url() and related functions now use download.file,
which has an extra "socket" method for direct HTTP socket
connection. download.file has new option ``quiet''.
o pairs.default() has an oma argument to allow users to override
the internal setting of that graphics parameter.
o princomp() in package mva allows the user to specify the
covariance matrix (and hence use, e.g. cov.mve).
BUG FIXES
o svd(matrix(2,1,0)),
arma0f(NULL), cancor(F,F) and prcomp(F[F]) no longer segfault.
o loess.smooth(F[F],F[F]) and supsmu(F[F],F[F]) no longer segfault.
o save(1, file = ""[F]) no longer segfaults.
o stop(list()) and warning(list()) no longer segfault.
o system(""[F]) and save(1, file = ""[F]) no longer segfault.
o Overflow of the pointer protection stack is handled correctly
o predict.glm(, type="link", se.fit=T) works
o str() now works with Surv(.) objects from library(survival5).
o all.equal(-Inf, -1e5) now gives "Mean absolute difference: Inf"
instead of "Mean relative difference: NaN".
o strsplit fix broke copy.url.
o 0 ^ -1 == Inf and min(NA, NaN) is now always NA
o R CMD xxx sets $R_HOME/bin to be first in PATH
o Added more warnings to update.packages & friends. New function
old.packages for better control of update.packages.
o Adding matrices to data frames now happens column by column as
documented, so character or logical matrices generate factor
columns.
o Formulae containing interactions with the response were
handled incorrectly by model.matrix, giving wrong answers or crashes.
o anova(lm(.)) with 0 weights now works.
o plot.lm(), dffits(), covratio() now do the right thing for weighted
lm regression.
o formatC(as.integer(c(1,0,NA))) now works. PR#394, thanks to Jens O.-A.
o format.char(.) is much faster for long vector argument [Jens O.-A.]
o \enumerate now enumerates in text conversion of .Rd files.
o glm() no longer fails with names<- errors in cases where
observations with fits on the mu.eta boundary have been dropped.
o Deviance residuals could be NaN instead of 0 by rounding error.
o shapiro.test(x) now gives better error messages (eg. x=rep(1,5))
and doesn't print ANYTHING anymore (in some cases).
o mode(as.formula(paste("~", paste(1:50, collapse="+")))[2]) now works.
o glm() now handles cases with numerically 0 or 1 fitted values in
binomial and numerically 0 in poisson correctly. (Previously
these observations were dropped even though the variances were
also numerically 0.)
o (-4 + 0i) ^ (1/2) now gives 2i.
o system.time() now does sensible things in the non-HAVE_TIMES
case, and that and proc.time() have better documentation.
o A couple of bugs in the data editor spreadsheet have been
eliminated.
o Elapsed time in proc.time() is no longer rounded to whole
seconds under Unix.
o Assigning character vectors to subsets of data frames now
works correctly (it used to assign the numeric codes of factors).
o Extensive enhancements and corrections to the help pages.
o The possibility of buffer overruns during printing has been
much reduced, and eliminated on systems with vsnprintf.
--
O__ ---- Peter Dalgaard Blegdamsvej 3
c/ /'_ --- Dept. of Biostatistics 2200 Cph. N
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-announce mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-announce-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
More information about the R-announce
mailing list