3

次のようなdata.framesのリストがあります。

List          
[[1]]                
    .....               
  List             
   [[2]]            
  ....           

 List              
[[95]]   

シンプルで簡単な方法で他の計算を行うために、この長いdata.framesのリストをそれぞれ3つのdata.framesのサブリストに分割したいと思います。

何かのようなもの:

sublist1 <-List [1:3]
sublist2 <-List [3:6]
sublist3 <-List [6:9]

等々。

4

2 に答える 2

3

私はこのようなことをします:

ll <- by(seq_along(l),cut(seq_along(l),3),
                 FUN=function(x)l[x])

これで、3 つのリストを含むリストができました。たとえば、最初のサブリストにアクセスするには、次のようにします。

ll[[1]]
[[1]]
data frame with 0 columns and 0 rows

[[2]]
data frame with 0 columns and 0 rows

[[3]]
data frame with 0 columns and 0 rows

など、ll[[2]]...

于 2013-02-19T12:18:56.757 に答える
2

assign次のようなものを使用して実行できます。

d <- data.frame()
l <- list(d,d,d,d,d,d,d,d,d)

for(i in seq(1, length(l), by=3)) {
    assign(paste0("x", i), l[i:(i+2)])
}

> ls()
# [1] "d"  "i"  "l"  "x1" "x4" "x7"
于 2013-02-19T11:33:00.140 に答える