2017-09-13 14 views
-1

私は以下のようにデータセットAを持っています。データセットAをデータセットBに変換するにはどうすればよいですか?データセットAには、ファイル内に10,000を超える観測値が含まれています。それを行う簡単な方法はありますか?データセットをRに転置するには

Dataset A: 

Line 1:AB 12 23 
Line 2:AB 34 56 
Line 3:CD 78 90 
Line 4:EF 13 45 

Dataset B: 
Line 1:AB 12 23 34 56 
Line 2:CD 78 90 NA NA 
Line 3:EF 13 45 NA NA 
+0

を使用してこれを試してみてくださいデータセットは、データフレームをA' 'ですか?再現可能な例を表示するために 'dput'を使用できますか?グループあたりの行数( 'AB'、' CD'、 'EF'、...)? – www

答えて

2

cSplit

library(splitstackshape) 
library(dplyr) 
DatA['new']=apply(DatA[,-1], 1, paste, collapse=",") 
DatA=DatA%>%group_by(Alphabet)%>%summarise(new=paste(new,collapse=',')) 
cSplit(DatA, 2, drop = TRUE,sep=',') 

    Alphabet new_1 new_2 new_3 new_4 
1:  AB 12 23 34 56 
2:  CD 78 90 NA NA 
3:  EF 13 45 NA NA 

データ入力

DatA <- data.frame(Alphabet = c("AB", "AB", "CD","EF"), 
        Value1 = c(12,34,78,13),Value2 = c(23,56,90,45),stringsAsFactors = F) 
関連する問題