0

我发现这个关于将嵌套表转换为 LaTeX 格式的博客(博客链接)。我喜欢结果,但想在行名之后的开头插入一列到对象中。我习惯于处理数据帧,因此处理这种野兽比典型的列索引更困难。

这是我现在拥有的:

          pre         post       
 approach mean  sd    mean  sd   
 1        24.17 8.310 54.33 11.01
 2        25.50 9.434 65.25 16.32
 3        26.33 9.139 63.17 12.53

这就是我希望它看起来的样子:

             pre         post       
 approach n  mean  sd    mean  sd   
 1        12 24.17 8.310 54.33 11.01
 2        12 25.50 9.434 65.25 16.32
 3        12 26.33 9.139 63.17 12.53

这是 z 的输入,也是我想插入的 n 的列。

先感谢您。

z <- structure(list(24.1666666666667, 25.5, 26.3333333333333, 8.31027111835746, 
    9.4339811320566, 9.13866245766587, 54.3333333333333, 65.25, 
    63.1666666666667, 11.0068848977136, 16.3157759685081, 12.5323822978956), .Dim = 3:4, .Dimnames = list(
    NULL, c("term", "term", "term", "term")), rowLabels = structure(c("1", 
"2", "3"), .Dim = c(3L, 1L), .Dimnames = list(NULL, "approach"), justification = structure(c(NA_character_, 
NA_character_, NA_character_), .Dim = c(3L, 1L)), colnamejust = NA_character_, justify = NA, suppress = 0), colLabels = structure(c("pre", 
"mean", NA, "sd", "post", "mean", NA, "sd"), .Dim = c(2L, 4L), justification = structure(c(NA_character_, 
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_, 
NA_character_, NA_character_), .Dim = c(2L, 4L)), colnamejust = character(0), justify = NA, suppress = 0), table = value * 
    v * approach ~ variable2 * result_variable, formats = structure(c(NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA), .Dim = 3:4, .Dimnames = list(
    NULL, c("format", "format", "format", "format"))), justification = structure(c(NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA), .Dim = 3:4, .Dimnames = list(
    NULL, c("justification", "justification", "justification", 
    "justification"))), class = "tabular")

structure(c(12L, 12L, 12L), .Names = c("1", "2", "3"))
4

2 回答 2

2

唯一(已知?)的方法是重新分配重新排序:

R> mockup <- data.frame(B=21:23, C=31:33)
R> mockup
   B  C
1 21 31
2 22 32
3 23 33
R>

现在添加A列:

R> mockup[,"A"] <- 1:3
R> mockup
   B  C A
1 21 31 1
2 22 32 2
3 23 33 3
R>

并重新排序:

R> mockup <- mockup[,c("A", "B", "C")]
R> mockup
  A  B  C
1 1 21 31
2 2 22 32
3 3 23 33
R> 

快速。开头的新栏目。

于 2012-09-12T15:14:09.010 回答
1

像这样的东西:

z <- data.frame(approach = gl(3, 12), pre = rnorm(36)*50, post = rnorm(36)*60)
library(tables)
tabular(approach ~ (pre + post) * (mean + sd))

      pre          post         
approach mean   sd    mean    sd   
1        -5.431 61.01   3.766 54.76
2        20.408 29.14  -9.261 54.58
3        -7.854 53.55 -30.046 62.41
tabular(approach ~ (n=1) + (pre + post) * (mean + sd))

    pre          post         
approach n  mean   sd    mean    sd   
1        12 -5.431 61.01   3.766 54.76
2        12 20.408 29.14  -9.261 54.58
3        12 -7.854 53.55 -30.046 62.41
tabular(approach + 1 ~ (n=1) + (pre + post) * (mean + sd))

    pre          post         
approach n  mean   sd    mean    sd   
1        12 -5.431 61.01   3.766 54.76
2        12 20.408 29.14  -9.261 54.58
3        12 -7.854 53.55 -30.046 62.41
All      36  2.374 50.06 -11.847 57.46

有关更多详细信息,请参阅包装的小插图。tables

于 2013-01-16T15:18:25.950 回答