[R] where does the null come from?

Peter Dalgaard P.Dalgaard at biostat.ku.dk
Wed May 13 11:46:01 CEST 2009


Wacek Kusnierczyk wrote:
>     m = matrix(1:4, 2)
> 
>     apply(m, 1, cat, '\n')
>     # 1 2
>     # 3 4
>     # NULL
> 
> why the null?

It comes from unlist()ing a list of NULLs, which in turn are the return
values of cat().

It is arguably a design-buglet not to return list(NULL, NULL), but the
internal logic is to unlist() unless the first element is.recursive (and
NULL is not) or the return values have different length() (and all are
zero). It _is_, however, in accordance with the documentation (see the
Value: section):

-- 
   O__  ---- Peter Dalgaard             Øster Farimagsgade 5, Entr.B
  c/ /'_ --- Dept. of Biostatistics     PO Box 2099, 1014 Cph. K
 (*) \(*) -- University of Copenhagen   Denmark      Ph:  (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk)              FAX: (+45) 35327907




More information about the R-help mailing list