, "", '' NA
indx <- sapply(data, class)!='Date'
data[indx][data[indx]==''] <- NA
"", . - matrix, character.
data[as.matrix(data)==''] <- NA
@Frank ( replace)
data[indx] <- lapply(data[indx], function(x) replace(x, which(x==''), NA))
set.seed(49)
data <- data.frame(Col1= sample(c('',LETTERS[1:3]), 10, replace=TRUE),
Col2=sample(c('',LETTERS[1:2]), 10, replace=TRUE),
Date=seq(as.Date('2010-01-01'),length.out=10, by='day'),
stringsAsFactors=FALSE)