[R] how to loop through 2 lists with different indexes
Tania Oh
tania.oh at brasenose.oxford.ac.uk
Wed Sep 6 16:16:21 CEST 2006
Dear all,
I am a newbie in R and need some help please. (I do apologise if my
email is not as informative as it should be, I've tried to include
the relevant details without overcrowding it with the rest of the code)
I would like to sample (without replacement) Y objects based on the
number of objects in X in 5 different bins. I'm having trouble
because the list object in which the number of objects of X is stored
in doesn't start its index from 0.
# number of X objects in each of the 5 bins
x.bin.size <- lapply(x.by.bins, nrow)
x.bin.size
$`3`
[1] 1
$`4`
[1] 3
$`5`
[1] 10
# no. of objects in each of the 5 bins of Y
y.bin.size <- lapply(y.by.bins, nrow)
> y.bin.size
$`2`
[1] 4
$`3`
[1] 42
$`4`
[1] 253
$`5`
[1] 945
how do I loop through Y and sample from X when the index of Y starts
from 2 and that of X starts from 3? in X, the missing index $`2` is
assumed to have 0 objects in it. hence, I would only sample from Y
and X starting from index 3.
sample (y.bin.size$`3`, x.bin.size$`3`, replace=FALSE)
but how should I do this in an R command without knowing which
indexes (of X ) are empty? Any pointers would be greatly appreciated.
Many thanks in advance,
tania
More information about the R-help
mailing list