Seth Falcon wrote: > Uwe Ligges <[EMAIL PROTECTED]> writes: > >>These are all dangerous, hence use the "safe" ways: >> >>sapply(a, is.null) >>sapply(a, identical, "NULL") >>sapply(a, is.na) >>sapply(a, identical, "NA") > > > Point taken, but is the behavior of as.character correct? > > as.character(list(NULL)) > > as.character(NULL)
I thought about it quite a while. I think the current bahaviour is quite OK. What should as.character do in the follwing case: as.character(list("A", NA, NULL)) ? Note that it only can return a character vector...! So, should it return a character vector of length 2? That's a bad idea, if the length is reduced. Moreover, as.character() does not get a NA or a NULL object for coercion but an element of type list that itself conatins NA or NULL... So if you want to convert a list to character and *keep* NA/NULL values, you can only say: lapply(a, as.character) Uwe > + seth > > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel