Dear all, My question is illustrated by the following example: I have a matrix M: > M<- > matrix(c("0","0","1","1","0","1","1","0","0","*","1","1","0","1","*"),nrow=3) > colnames(M)<- c("2006","2007","2008","2009","2010") > M 2006 2007 2008 2009 2010 [1,] "0" "1" "1" "*" "0" [2,] "0" "0" "0" "1" "1" [3,] "1" "1" "0" "1" "*" > pattern<- c("0","1") I would like to find, for each row, if it contains exactly the pattern of two character strings, beginning with a "0" and followed by a "1", i.e, exactly "0" "1". If it does, at which year? E.g. It should return 2006 for row 1, 2008 for row 2 and 2008 for row 3. For as far as I know, the variations of the grep function group cannot search for a pattern that has 2 or more character strings. I could do it with a loop but I seek a more efficient way than a loop. How should I do it? Really appreciated for your help!!! Best regards, Jing Liu [[alternative HTML version deleted]]
______________________________________________ R-help@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.html and provide commented, minimal, self-contained, reproducible code.