Re: [R] Quick recode of -999 to NA in R

From: Marc Schwartz <marc_schwartz_at_me.com>
Date: Wed, 30 Mar 2011 12:34:15 -0500

On Mar 30, 2011, at 11:52 AM, Gabor Grothendieck wrote:

> On Wed, Mar 30, 2011 at 11:51 AM, peter dalgaard <pdalgd_at_gmail.com> wrote:

>>
>> On Mar 30, 2011, at 16:05 , Christopher Desjardins wrote:
>>
>>>> 
>>>> dat0 <- read.table('tim1.dat', na = -999)
>>>> 
>>> 
>>> Ah ... yes. I knew that but clearly didn't at the time of my question or
>>> script writing.
>>> Thanks,
>>> Chris

>>
>> Depending on where your data came from, you could get caught by the fact that the above is really ...na.strings="-999"... and that is not going to work if the actual code is (say) -999.00.
>>
>> Another straightforward option is dat0[dat0 == -999] <- NA
> 
> That's a good point about -999.00.  If we knew all the variations in
> the input then a workaround for that would be to cover all of them:
> 
> read.table("myfile", ...whatever...,   na.strings = c("-999",
> "-999.0", "-999.00"))


There is also the seminal:

  is.na(dat0) <- dat0 == -999

See ?is.na, specifically the assignment variant.

Regards,

Marc Schwartz



R-help_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. Received on Wed 30 Mar 2011 - 17:44:10 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Wed 30 Mar 2011 - 18:20:26 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive