2017-06-14 10 views
-1

私は9行54列のさまざまな数値のデータセットを持っています。最初の9つの列の値をRの1つの長い列に結合します。次に、次の9つの列のそれぞれについて、同じ長さの列が6つしかないまで同じです。これは簡単だと思われますが、私がオンラインで見つけた同様の問題のどれもが私のデータセットのために働いていません。Rの9列のセットを組み合わせる

+0

列が_combined_する必要がありますどのように正確に? – bouncyball

+0

データセットはどのように正確に見えますか?おそらく 'dput(yourdatasetname)'を使ってデータの小さなサブセットをここに貼り付けることができます。 –

答えて

0

あなたは、変数を連結することにしたいと仮定すると、私は証明するために9で6に3の代わりに、54で2に6つの変数を有効にします:

# A tibble: 5 x 6 
      x   y   z   a   b   c 
     <dbl>  <dbl>  <dbl>  <dbl>  <dbl>  <dbl> 
1 1.0127014 -0.7025836 0.2956671 -0.3563105 1.3232985 -0.367605941 
2 -0.6845605 -1.4586245 0.3016737 1.6841862 -0.6978598 1.608783979 
3 0.3492607 0.1987113 -0.0945271 1.3073516 -0.3971175 -1.074255857 
4 -1.6245010 1.0544690 -0.2790357 0.4352904 0.1711608 0.006136588 
5 -0.5162476 -0.7112214 0.1681388 1.4536406 0.6854223 -0.442184403 

library(dplyr) # load package 
library(tidyr) # load package 

set.seed(1839) # set seed for replication 
d <- tibble(x=rnorm(5), y=rnorm(5), z=rnorm(5), # create data frame 
      a=rnorm(5), b=rnorm(5), c=rnorm(5)) # create data frame 

データフレームは次のようになります

d <- d %>% # take data frame 
    unite(var1, x:z, sep="; ") %>% # combine with semicolon and space in between 
    unite(var2, a:c, sep="; ") # combine with semicolon and space in between 

し、得られたデータフレーム:

は今unite関数を使用します:

# A tibble: 5 x 2 
                 var1              var2 
*              <chr>              <chr> 
1 1.01270138785465; -0.702583610804264; 0.295667113228807 -0.356310525447978; 1.3232984913192; -0.367605940884135 
2 -0.684560547695866; -1.45862451298252; 0.301673721520136 1.68418623459335; -0.697859769158927; 1.60878397933222 
3 0.349260666732972; 0.198711282685719; -0.0945271007709923 1.3073516257469; -0.397117503476358; -1.07425585717004 
4 -1.62450101506933; 1.05446901501249; -0.279035672484018 0.435290405700962; 0.171160804752516; 0.00613658799909723 
5 -0.516247631722097; -0.711221362746118; 0.168138783952361 1.45364055160547; 0.685422280037675; -0.442184403125297 
1

これを試してください。あなたのdata.frameと仮定するとdfです:

as.data.frame(matrix(unlist(df),ncol=6)) 
関連する問題