What the breaks are is that you are looking to see where the NAs start. In your case, you wanted the value at the start of the NA string to be grouped with the following NAs. The 'is.na' will return TRUE for NAs and if you invert the vector, you will have TRUE for each of the non-NA values. By doing the 'cumsum' you will get the same values for the NAs that follow a non-NA:
> is.na(testVector) [1] FALSE FALSE TRUE TRUE FALSE TRUE FALSE FALSE FALSE TRUE TRUE TRUE FALSE > cumsum(!is.na(testVector)) [1] 1 2 2 2 3 3 4 5 6 6 6 6 7 The result of the 'cumsum' is then then grouping factor for split. HTH On Wed, Oct 28, 2009 at 8:43 AM, Johannes Graumann <johannes_graum...@web.de> wrote: > Just so. I got until 'split' but was stuck on how to get the breaks ... > > Thank you! > > Joh > > jim holtman wrote: > >> Is this what you want: >> >>> testVector <- c(12,32,NA,NA,56,NA,78,65,87,NA,NA,NA,90) >>> # get the breaks at the NAs >>> xb <- cumsum(!is.na(testVector)) >>> split(seq(length(testVector)), xb) >> $`1` >> [1] 1 >> >> $`2` >> [1] 2 3 4 >> >> $`3` >> [1] 5 6 >> >> $`4` >> [1] 7 >> >> $`5` >> [1] 8 >> >> $`6` >> [1] 9 10 11 12 >> >> $`7` >> [1] 13 >> >> >> On Wed, Oct 28, 2009 at 7:57 AM, Johannes Graumann >> <johannes_graum...@web.de> wrote: >>> Dear all, >>> >>> Is there an efficient way to get this list >>>> testList <- list(c(1),c(2,3,4),c(5,6),c(7),c(8),c(9,10,11,12),c(13)) >>> >>> from this vector >>>> testVector <- c(12,32,NA,NA,56,NA,78,65,87,NA,NA,NA,90) >>> ? >>> >>> Basically the vector should be grouped, such that non-NA and all >>> following NAs end up in one group. >>> >>> Thanks for any hint, >>> >>> Joh >>> >>> ______________________________________________ >>> 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. >>> >> >> >> > > ______________________________________________ > 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. > -- Jim Holtman Cincinnati, OH +1 513 646 9390 What is the problem that you are trying to solve? ______________________________________________ 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.