[R] assignment in lists
Philippe Grosjean
phgrosjean at sciviews.org
Fri Jun 27 08:34:40 CEST 2003
Prof. Brian Ripley wrote:
>Philippe,
>as.list(NULL) is the same as list(), and that is what I think you should
>be using in both cases.
OK, thank you.
>However, I do think that either both or neither of your examples should
>work: my preference would be `neither' but as S allows both it should be
>`either'.
I agree with you, including on the fact that 'neither' should work. I would
prefer a language that obliges to declare list components before using them.
Experimenting a little bit more around this problem, I got that:
- assigning NULL to a list entry deletes this entry from the list. OK, fine.
Asking for:
my.list$non.existing.item gives NULL. Thus, it is consistent. However, if I
use this:
> a <- list(item1=NULL, item2=NULL)
> a
$item1
NULL
$item2
NULL
- this is a strange behaviour because the previous command should have
returned 'list()' in a. Consequently, when I reallocate NULL to either
'item1', or 'item2' of 'a', it deletes it:
> a$item1 <- NULL
> a
$item2
NULL
Not an harmfull behaviour, but inconsistent with the rest.
Best,
Philippe Grosjean
...........]<(({°<...............<°}))><...............................
) ) ) ) )
( ( ( ( ( Dr. Philippe Grosjean
) ) ) ) )
( ( ( ( ( LOV, UMR 7093
) ) ) ) ) Station Zoologique
( ( ( ( ( Observatoire Océanologique
) ) ) ) ) BP 28
( ( ( ( ( 06234 Villefranche sur mer cedex
) ) ) ) ) France
( ( ( ( (
) ) ) ) ) tel: +33.4.93.76.38.18, fax: +33.4.93.76.38.34
( ( ( ( (
) ) ) ) ) e-mail: phgrosjean at sciviews.org
( ( ( ( ( SciViews project coordinator (http://www.sciviews.org)
) ) ) ) )
.......................................................................
More information about the R-help
mailing list