Multiple na.strings in read.table() function in R

user2462924 picture user2462924 · Jun 7, 2013 · Viewed 33.7k times · Source

I have a square table and it has two na.strings (e.g. "A" and "B") that I need to turn into NA. So far I can turn either one of those into NA but not both. How should I do this? Can I use a function in that argument? If yes, what function should I use? I tried like (na.strings = "A" | "B") and (na.strings = "A | B") but it does not work. My code is as follows:

loadfile<-read.table("test.csv", header=T, sep=",", na.strings="A | B")

Answer

Simon O&#39;Hanlon picture Simon O'Hanlon · Jun 7, 2013

na.strings takes a character vector, so...

loadfile <- read.table( "test.csv" , header = TRUE ,
                         sep="," ,
                         na.strings = c("A" , "B" ) )

From the helpfile:

na.strings: a character vector of strings which are to be interpreted as NA values