2017-09-11 3 views
-3

私はテーブルを再形成についての非常に基本的な質問があります:私は、私はR.への比較的新しいですデータフレームを行に変換する方法は?

pval  High  Low 
    0.782  0.62 1.58 

にそれを変更したい

 pval  Quality 
High 0.782  0.62 
Low 0.782  1.58 

は、誰かが助けてもらえますか?ありがとう!

+0

'' reshape' melt'、次いで 'T()' ' – Wen

+0

非公開に(DF)重複を削除[ - 2]' ' –

+0

T(非公開に(DF)[ -2]) 'が働く。大変ありがとうございました! – kin182

答えて

1

を機能spreadを使用することができます。

reshape(cbind(df, rn=rownames(df), row.names=NULL), 
    direction="wide", timevar="rn", idvar="pval") 
# pval Quality.High Quality.Low 
# 1 0.782   0.62  1.58 

データ:

df <- structure(list(pval = c(0.782, 0.782), Quality = c(0.62, 1.58 
)), .Names = c("pval", "Quality"), class = "data.frame", row.names = c("High", 
"Low")) 
1

あなたが最初のデータに行名をバインドする場合は、ストレートreshape()を行うことができtidyverseパッケージに

library(tidyverse) 
df1 %>% 
    rownames_to_column() %>% 
    spread(rowname, Quality) 

結果

pval High Low 
1 0.782 0.62 1.58 
関連する問題