[R] Problem assigning "NA" as a level name in a list
Peter Dalgaard
p.dalgaard at biostat.ku.dk
Tue Dec 16 19:14:06 CET 2008
Cliff Behrens wrote:
> Peter,
>
> I've inserted response inline below:
>
> Cliff
>
> Peter Dalgaard wrote:
>> Cliff Behrens wrote:
>>> Peter,
>>>
>>> OK...here is reproducible, self-contained code:
>>>
>>> library(gregmisc)
>>
>> Relying on a 3rd party package is not kosher either... Whatever did
>> list("NA"=2) or l <- list(2); names(l) <- "NA" do to you?
>>
> I'm not sure what you mean by "3rd party?" I downloaded this package
> from the CRAN site where I get all others. I don't understand your
> question.
3rd party means that you didn't write it and neither did I/we. You are
requesting people to help you, yet expecting that they go out of their
way to install a package first. (As it happens, I really don't have
gregmisc on this machine.) You could easily have created an example of a
list with "NA" as a name, but that would of course have been work for
you rather than for people on the list.
>>> columnNames <- c("A","B","C","D","N","a","b","c")
>>> namePerms<- permutations(length(columnNames),2,columnNames,repeats=TRUE)
>>> nameList <- paste(namePerms[,1],namePerms[,2],sep="")
>>> dataList <- lapply(1:length(nameList), function(level) {})
>>> names(dataList)<- nameList ## The "NA" is interpreted that the name
>>> is missing for one list in dataList
>>>
>>> If you inspect the contents of dataList, you will find the following
>>> showing that the name "NA" is treated differently:
>>
>> Anyways.... As I thought:
>>
>> Remember that NA is a reserved word. You get the same kind of reaction
>> if you name an element "for" or "in". It denotes that you need to
>> quote the name for indexing with $:
>>
> I thought that since all of the names in namesList were type char, there
> was no need to enclose these in quotation marks.
That's not the point. It works fine, it is just that the output is
showing you how to access the element afterwards.
>> > names(l) <- "NA"
>> > l$NA
>> Error: unexpected numeric constant in "l$NA"
>> > l$`NA`
>> [1] 2
>> > l$"NA"
>> [1] 2
>> > l[["NA"]]
>> [1] 2
>> > names(l)
>> [1] "NA"
>>
>>> ......
>
>
--
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