is.na(v)<-b (was: Re: [R] Beginner's query - segmentation fault)
Prof Brian Ripley
ripley at stats.ox.ac.uk
Wed Oct 8 12:49:29 CEST 2003
On Wed, 8 Oct 2003, Simon Fear wrote:
> Note this behaviour:
>
> > a<-"a"
> > a<-NA
> > mode(a)
> [1] "logical"
> > a<-"a"
> > is.na(a) <- T
> > mode(a)
> [1] "character"
>
> However after either way of assigning NA to a, is.na(a) is true,
> and it prints as NA, so I can't see it's ever likely to matter. [Why
> do I say these things? Expect usual flood of examples where it
> does matter.]
>
> Also if a is a character vector, a[2] <- NA coerces the NA to
> as.character(NA); again, just as one would hope/expect.
>
> I have to echo Richard O'K's remark: if <- NA can ever go wrong,
> is that not a bug rather than a feature?
I don't think it can ever `go wrong', but it can do things other than the
user intends. The intention of is.na<- is clearer, and so perhaps user
error is less likely? That is the thinking behind the function, anyway.
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-help
mailing list