François Pinard wrote:
> Hi, R people.
>
> In ?factor, in the "Examples:" section, we see:
>
>   ## suppose you want "NA" as a level, and to allowing missing values.
>   (x <- factor(c(1, 2, "NA"), exclude = ""))
>   is.na(x)[2] <- TRUE
>   x  # [1] 1    <NA> NA, <NA> used because NA is a level.
>   is.na(x)
>   # [1] FALSE  TRUE FALSE
>
> I'm a bit confused by this example, as I do not understand the point 
> being made.  Using 'exclude = ""' or not does not change the outcome.
> What is being demonstrated by this clause, here?  Isn't "NA" a mere 
> string, not really related to a missing value?
>
> It might also be some kind of linguistic problem, and I'm not a native 
> English speaker.  The "and to allowing" construct sounds strange to me.  
> I would expect either "and to allow" or "and allowing", but maybe I'm 
> plainly missing the meaning of the statement.
>
> Could this be clarified somehow?
>
>   
I think this is a relic. In the olden days, there was no such thing as a 
missing character values, and factor() would behave like

 >  (x <- factor(c(1, 2, "NA"), exclude = "NA"))
[1] 1    2    <NA>
Levels: 1 2

...which was a pain when dealing with abbreviations for "noradrenalin", 
"North America", "New Alliance", "Neil Armstrong", etc. So character NA 
was added to R, and the example became irrelevant without anyone noticing.

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to