[Rd] split.data.frame
Romain Francois
romain.francois at dbmail.com
Tue Dec 15 10:06:22 CET 2009
Hello,
I very much enjoy "with" and "subset" semantics for data frames and was
wondering if we could have something similar with split, basically by
evaluating the second argument "with" the data frame :
split.data.frame
function(x, f, drop = FALSE, ...){
call <- match.call( )
fcall <- call( "with", data = call[["x"]], expr = call[["f"]] )
ff <- eval( fcall, parent.frame(1) )
lapply(split(seq_len(nrow(x)), ff, drop = drop, ...),
function(ind) x[ind, , drop = FALSE])
}
> split( df, y )
$`1`
x y
1 1 1
2 2 1
3 3 1
4 4 1
5 5 1
$`2`
x y
6 6 2
7 7 2
8 8 2
9 9 2
10 10 2
> split( df, x > 3 )
$`FALSE`
x y
1 1 1
2 2 1
3 3 1
$`TRUE`
x y
4 4 1
5 5 1
6 6 2
7 7 2
8 8 2
9 9 2
10 10 2
Romain
--
Romain Francois
Professional R Enthusiast
+33(0) 6 28 91 30 30
http://romainfrancois.blog.free.fr
|- http://tr.im/HlX9 : new package : bibtex
|- http://tr.im/Gq7i : ohloh
`- http://tr.im/FtUu : new package : highlight
More information about the R-devel
mailing list