我有一张表格如下:
Outcome System k_pval k_exactpval k
A R num num num
B S num num num
C T num num num
A X num num num
B Y num num num
如何跨制表进行操作,以便System显示在列中,Outcome在行中,然后对于每个系统/结果对,有3列(k,k_pval,k_exact_pval)。
例如,你会有
A A A B B B
R k_1 k_p_val1 k_exact_pval1 k_2 k_pval2 k_exact_pval2
S k_3 k_p_val3 k_exact_pval3 k_4 k_pval4 k_exact_pval4
谢谢!
答案 0 :(得分:1)
要重塑您的数据,reshape2
包非常有用。我认为这将完成你所追求的目标。
dd <- data.frame(
Outcome = c("A", "B", "C", "A", "B"),
System = c("R", "S", "T", "X", "Y"),
k_pval = c(0.02, 0.04, 0.01, 0.1, 0.22),
k_exactpval = c(0.05, 0.02, 0.01, 0.3, 0.1),
k = c(4, 5, 3, 3, 1)
)
mm<-melt(dd, id.var=c("Outcome","System"))
dcast(mm, System~variable+Outcome)