如何用R中的“嵌套”行/列值创建表?

时间:2019-09-22 04:25:03

标签: r

我不确定“嵌套”是否正确。我有一个包含多个ID变量(包括“ n”和“ Method”)的数据框,然后是三个数字变量。对于每个n值,Method(素数或采样)都有2个值。

  • n方法t1 t5高斯
  • 100个素数......................
  • 100 amp .....................
  • 200个素数.......................
  • 200 amp ......................
  • 等......................................

我需要将其显示在一个表中,这样对于两种不同的方法,“ n”仅显示一次。它看起来像链接为shell表的图片。

我可以使用tabular()来获取n和方法的正确格式,但是当我真的想显示实际值时,我将显示高斯,t1和t5的计数,它们全部为1。

tabular(data=r, n*Method ~ Format(digits=4)*(t1 + t5 + gaussian))

enter image description here ...

1 个答案:

答案 0 :(得分:1)

我假设您拥有的数据帧如下:

dput(mydf)
structure(list(n = c("100", "100", "200", "200"), Method = c("prime", 
"samp", "prime", "samp"), t1 = c("", "", "", ""), t5 = c("", 
"", "", ""), gaussian = c("", "", "", "")), class = "data.frame", row.names = c(NA, 
-4L))
# -------------------------------------------------------------------------
#   n Method t1 t5 gaussian
# 1 100  prime               
# 2 100   samp               
# 3 200  prime               
# 4 200   samp 

所以您可以做的是:

mydf$n[duplicated(mydf$n)] <- " "
#   n Method t1 t5 gaussian
# 1 100  prime               
# 2       samp               
# 3 200  prime               
# 4       samp   

这应该为您提供所需的输出格式。