[R] Identifying and characterizing strings of NA in a vector

Jorge Ivan Velez Valbuena jivelez at unal.edu.co
Thu Oct 11 23:01:08 CEST 2007


Hi Marie-Pierre,

You first should identify wich components of vec are NA, then compute the length.

vec <- c(1, 2, 1, NA, NA, 1, 2, NA, NA, NA, 3, 4, NA, NA)

# Which component is NA?
wcs<-which(-is.na(vec))

# Number of NA's in vector vec
length(wcs)

If you need to do the same for many vector, you could try

# A simple function to determinate the number of NA components in a vector x
count.NAS=function(x) length(which(is.na(x)))

# For vec
count.NAS(vec)

If you have many vector (for example in a matrix), you could use

> apply(X,2,count.NAS)


Best wishes,

Jorge Ivan Velez Valbuena
Industrial Engineer
Master in Sciences (Candidate)
Faculty of Sciences
School of Statistics
National University of Colombia at Medellin
Medellin, Antioquia, Colombia 
e-mail: jivelez at unal.edu.co


----- Original Message -----
From: Marie-Pierre Sylvestre <marie-pierre.sylvestre at mail.mcgill.ca>
Date: Thursday, October 11, 2007 9:47 am
Subject: [R] Identifying and characterizing strings of NA in a vector

> Dear R users,
> 
> I was wondering if someone could suggest a few lines of code for 
> my problem.
> 
> I want to count the number and the length of strings of NA in a 
> vector. 
> For example:
> 
> vec <- c(1, 2, 1, NA, NA, 1, 2, NA, NA, NA, 3, 4, NA, NA)
> 
> has 2 strings of NA's of length 2 and 1 string of NA' of length 3.
> 
> I can easily count the number of NA's per vector, but I am having 
> a hard 
> time counting the number and length of strings of NA's per vector 
> without relying heavily on loops. I will have to perform this task 
> for 
> many vectors.
> 
> Can somebody help?
> 
> many thanks,
> 
> Marie-Pierre
> 
> ______________________________________________
> 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.htmland provide commented, minimal, self-contained, 
> reproducible code.
>



More information about the R-help mailing list