2016-11-13 6 views
1

スレッドHow to make a great R reproducible example?に基づいてRに2つのリストの最小リストを作成しようとしていますが、基本的な例としてリストのリストをカバーしていません。 はBの長さを最小限に抑えることができるが、Rに2つのリストの最小リストを作成するには?

List of 2 
$ :'data.frame': 541650 obs. of 2 variables: 
    ..$ V1: num [1:541650] -0.21 -0.205 -0.225 -0.22 -0.21 -0.19 -0.205 -0.205 -0.205 -0.205 ... 
    ..$ V2: num [1:541650] -0.245 -0.22 -0.2 -0.2 -0.195 -0.2 -0.19 -0.185 -0.18 -0.185 ... 
$ :'data.frame': 426098 obs. of 2 variables: 
    ..$ V1: num [1:426098] -0.285 -0.285 -0.185 -0.285 -0.385 -0.305 -0.305 -0.125 -0.015 -0.285 ... 
    ..$ V2: num [1:426098] -0.445 -0.6 -0.815 -0.665 -0.49 -0.68 -0.555 -0.755 -0.795 -0.405 ... 

dput(files)を行う異質でなければならない次のような構造の最小データサンプルを募集、あなたが大きすぎる例のデータを取得します。 Doing reproduce(files)、同じ場合。 私もdput(head(files, 5))を試しましたが、1つのリストには5桁しか返しません。 B(1,2)の長さは

length(B(1)_i) = length(B(2)_i) 
  • はBの長さを最小化するように変化する二つのリストB(1,2)の擬似コード

    • 構造リストA(1,2 )その後のBsの異種の長さを保つ

    募集出力構造

    List of 2 
    $ data.frame 11 obs. of 2 variables 
        $ V1: num [1:11] -0.21 -0.205 ... 
        $ V2: num [1.11] -0.245 -0.22 ... 
    $ data.frame 7 obs. of 2 variables 
        $ V1: num [1:7] -0.285 -0.286 ... 
        $ V2: num [1.7] -0.445 -0.6 ... 
    

    R:3.3.1
    OS:Debianの8.5

  • +0

    LST < '試してみてください - リスト(data.frame(V1 = (11)、V2 = rnorm(11))、data.frame(V1 = rnorm(7)、V2 = rnorm(7))) 'またはループ' lst1 < - lapply(c(11、7)、 – akrun

    答えて

    2

    これは、いくつかの方法で行うことができます。 2 data.frameを作成し、list

    lst <- list(data.frame(V1 = rnorm(11), V2 = rnorm(11)), 
          data.frame(V1 = rnorm(7), V2 = rnorm(7))) 
    

    または作成するために多くのdata.frame sが存在する場合にそれを置き、使用ループ

    lst1 <- lapply(c(11, 7), function(n) data.frame(V1 = rnorm(n), 
               V2 = rnorm(n))) 
    
    +2

    "split(data.frame(V1 = rnorm(18)、V2 = rnorm(18))、1(data = frame(V1)= rnorm :18 <7) ' – baptiste

    関連する問題