[R] assigning NULL to a list element without changing the length of the list

Gonçalo Ferraz gferraz29 at gmail.com
Thu Nov 15 22:01:05 CET 2012


Hi,

I have a list:

tmp0 <- list(a=1, b=2, c=3)

And I realize that I can append a NULL element to the end of this list, just by writing:

length(tmp0) <- 4

Now, the question is, how can I assign NULL to one of the existing list elements without changing the length of the list?

Please note I am working from inside a for loop that is working on one list element at a time and in some circumstances I want to 
set one element to NULL. So, specifying the whole list again as in:

tmp0 <- list(a=1,b=NULL,c=3)

is not an option.

But writing, say:

tmp0 [[2]] <- NULL

is not an option either, because it leaves me with a list of length 2.

Is there a solution for this?

Thank you



More information about the R-help mailing list