2017-04-07 8 views
0

回答者が一連の5つの質問を行うオンライン調査のデータがあります。私はこのようなルックスで働いています データ:列のグループを集める

P1 P2 P3 P4 P5 P1 P2 P3 P4 P5 P1 P2 P3 P4 P5 
    1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 
    6 7 8 9 10 6 7 8 9 10 6 7 8 9 10 

所望の出力は次のようになります。

 P1 P2 P3 P4 P5 
    1 2 3 4 5 
    6 7 8 9 10 
    1 2 3 4 5 
    6 7 8 9 10 
    1 2 3 4 5 
    6 7 8 9 10 

私は図書館tidyrでこの問題を解決しようとしているが、どのように私は理解できませんそれを適用する。 これについてのアドバイスは、本当に役に立ちます。

+1

あなたは '私たちのために、あなたのデータをdput'することはできますか?あなたはちょうど一緒に5列の各セットを積み重ねようとしていますか? – A5C1D2H2I1M1N2O1R2T1

+0

check http://stackoverflow.com/questions/15803057/binding-columns-with-similar-column-names-in-the-same-dataframe-in-r – timfaber

+0

これもうまくいくと思います: 'data.frame(split .......... – A5C1D2H2I1M1N2O1R2T1

答えて

0

解決策の1つは指定できます

require(foreach) 
require(dplyr) 
require(magrittr)  

foreach(
    unique_name = unique(colnames(df)), 
    .combine = 'bind_cols' 
) %do% { 

    df[grep(unique_name), colnames(df)] %>% 
    unlist() %>% 
    as.data.frame() %>% 
    set_colnames(., unique_names) 

} 
+0

あなたのコードには余分な ')'があります(あなたのコードには余分なものがあります) – manotheshark