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

하나가 될 수 있습니다

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

당신의 코드에 여분의')'가있다. (unlist (indf, use.names = FALSE), rep (names (indf), each = nrow (indf) – manotheshark