On 6/10/2008 9:23 AM, Creighton, Sean wrote:
Hi

I consider myself not a complete beginner in R, however an elegant
solution to this problem stumps me. I have a fairly long time series of
60000 or so points, I need to gather the data to create a histogram of
the length of continuous zero periods in a data set.
So image the data looks like this (where as a pre-condition all numbers
are single digit so assume commas if you which, I have the time series
properly formatted in a zoo object)

333343245352352352353252335000003343253532523523522352352353253225325300
002352352332552533252353200325235235

I should get the following zero periods out:
333343245352352352353252335 <00000>
33432535325235235223523523532532253253 <0000> 23523523325525332523532
<00> 325235235

So I have three entries for my histogram 5,4 and 2. Now can anyone give
me any tips that doesn't involve using a loop which will be quite time
consuming? Is there some function in a libray that already does
something like this?

  How about rle()?  For example:

X <- sample(0:9, 60000, replace=TRUE)

table(rle(X == 0)[[1]][rle(X == 0)[[2]]])

   1    2    3    4
4813  490   49    3

hist(rle(X == 0)[[1]][rle(X == 0)[[2]]])

?rle

Thanks
Sean

______________________________________________
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.

--
Chuck Cleland, Ph.D.
NDRI, Inc. (www.ndri.org)
71 West 23rd Street, 8th floor
New York, NY 10010
tel: (212) 845-4495 (Tu, Th)
tel: (732) 512-0171 (M, W, F)
fax: (917) 438-0894

______________________________________________
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.

Reply via email to