Insert random NAs in a vector in R
[This article was first published on Paleocave Blog » R, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
I was recently writing a function which was going to need to deal with NAs in some kind of semi-intelligent way. I wanted to test it with some fake data, meaning that I was going to need a vector with some random NAs sprinkled in. After a few disappointing google searches and a stack overflow post or two that left something to be desired, I sat down, thought for a few minutes, and came up with this.
#create a vector of random values foo <- rnorm(n=100, mean=20, sd=5) #randomly choose 15 indices to replace #this is the step in which I thought I was clever #because I use which() and %in% in the same line ind <- which(foo %in% sample(foo, 15)) #now replace those indices in foo with NA foo[ind]<-NA #here is our vector with 15 random NAs foo
Not especially game changing but more elegant than any of the solutions I found on the interwebs, so there it is FTW.
To leave a comment for the author, please follow the link and comment on their blog: Paleocave Blog » R.
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.