[R] Spliting a huge vector
Dave Evens
devens8765 at yahoo.com
Thu Sep 21 22:43:49 CEST 2006
Dear R users,
Sorry, I made a mistake in my specification of
problem, should be:
# my vector is this
a.vector <- seq(2, by=5, length=1000)
# so my cut values are
cut.values <- c(30, 50, 100, 109, 300, 601, 803, 1000)
# and x should have an extra ")" at the end
x <- rep(1:length(cut.values), times=diff(c(0,
cut.values)))
Thanks for all the responses so far. Any additional
responses are welcome.
Many thanks,
Dave
--- Dave Evens <devens8765 at yahoo.com> wrote:
>
> Dear R users,
>
> I have a huge vector that I would like to split into
> unequal slices. However, the only way I can do this
> is
> to create another huge vector to define the groups
> that are used to split the original vector, e.g.
>
> # my vector is this
> a.vector <- seq(2, by=5, length=100)
>
> # indices where I would like to slice my vector
> cut.values <- c(30, 50, 100, 109, 300, 601, 803)
>
> # so I have to create another vector of similar
> length
> # to use the split() command, i.e.
> x <- rep(1:length(cut.values), times=diff(c(0,
> cut.values))
>
> # this means I can use split()
> split(a.vector, x)
>
> This seems to be a waste in terms of memory usage as
> I'm creating another vector (here "x") to split the
> original vector. Is there a better way to split a
> huge
> vector than this? Any help is much appreciated.
>
> Best,
> Dave.
>
>
> __________________________________________________
> Do You Yahoo!?
> protection around
> http://mail.yahoo.com
>
More information about the R-help
mailing list