Count NAs per row in dataframe

Shark7 picture Shark7 · Jun 14, 2016 · Viewed 59.9k times · Source

I've got dataframe that has batch ID and the results of six tests performed on each batch. The data looks like this:

batch_id  test1  test2  test3  test4  test5  test6
001       0.121     NA  0.340  0.877  0.417  0.662
002       0.229  0.108     NA  0.638     NA  0.574

(there are a few hundred rows in this dataframe, only one row per batch_id)

I'm looking for a way to count how many NAs there are for each batch_id (for each row). I feel like this should be do-able with a few lines of R code at the most, but I'm having trouble actually coding it. Any ideas?

Answer

Sven Hohenstein picture Sven Hohenstein · Jun 14, 2016

You can count the NAs in each row with this command:

rowSums(is.na(dat))

where dat is the name of your data frame.