[R] exists function on list objects gives always a FALSE
Duncan Murdoch
murdoch at stats.uwo.ca
Tue May 19 18:31:55 CEST 2009
On 5/19/2009 12:07 PM, Žroutík wrote:
> Dear R-users,
>
> in a minimal example exists() gives FALSE on an object which obviously does
> exist. How can I check on that list object anyway else, please?
>
>> SmoothData <- list(exists=TRUE, span=0.001)
>> SmoothData
> $exists
> [1] TRUE
>
> $span
> [1] 0.001
>
>> exists("SmoothData")
> TRUE
>
>> exists("SmoothData$span")
> FALSE
>
>> exists("SmoothData[[2]]")
> FALSE
>
> Thank you for any opinion regarding this topic.
There is no variable with name "SmoothData$span", there is an element of
SmoothData with name "span".
To test for that, the safest test is probably
"span" %in% names(SmoothData)
but a common convention is to use
is.null(SmoothData$span)
because NULL elements are rare in lists.
Duncan Murdoch
More information about the R-help
mailing list