2016-03-28 10 views
0

次のデータフレームがあります。これは、上記のデータフレームの正確な順序を持っている必要はありません。私は最初の列の行の値をRの列に変換する

Thomas Sally Morrison Chris 
23.6  28.1  32.5  27.9 
30.3  54.2  44.3  99.2 

NOTEに変換するにはどうすればよい

Student Score 
Thomas  23.6 
Sally  28.1 
Chris  27.9 
Morrison 32.5 
Thomas  30.3 
Sally  54.2 
Morrison 44.3 
Chris  99.2 

私はreshape2、reshape、dcast、melt、cbindなどで変換しようとしましたが、何もできませんでした。

+0

'reshape(pooling_df、idvar =" batchNum "、timevar =" Pooling_QC "、direction =" wide ")'警告が表示されます。 – cooldood3490

答えて

1

reshape2パッケージのdcast機能を使用してください。

d1 <- read.table(text="Student Score 
Thomas  23.6 
Sally  28.1 
Chris  27.9 
Morrison 32.5 
Thomas  30.3 
Sally  54.2 
Morrison 44.3 
Chris  99.2", head=T, as.is=T) 

library(dplyr) 

d2 <- d1 %>% group_by(Student) %>% mutate(cn=1:n()) 

library(reshape2) 

dcast(d2, cn~Student, value.var = "Score") 
# cn Chris Morrison Sally Thomas 
# 1 1 27.9  32.5 28.1 23.6 
# 2 2 99.2  44.3 54.2 30.3 
関連する問題