繁体   English   中英

将数据框列表与标题合并

[英]merge the data frame list with the headers

我有一个存储 2 个数据框的列表

data <- list(structure(list(GROUP = "3\nN=6 (86%)", col1 = "6.5 [5.25; 7.75]", 
    col2 = "9 [7.25; 10.75]", col3 = "10.5 [9.25; 11.75]", dif = "1-2: -3 [-3; -3]\n1-3: -5 [-5; -5]\n2-3: -2 [-2; -2]", 
    p.value = "1-2: 0.107\n1-3: 0.013*\n2-3: 0.295"), row.names = c(NA, 
-1L), class = "data.frame"), structure(list(GROUP = "3\nN=6 (86%)", 
    col3 = "10.5 [9.25; 11.75]", col4 = "14.5 [12.5; 15.75]", 
    col5 = "16.5 [15.25; 17.75]", dif = "3-4: -3 [-3; -3]\n3-5: -6 [-6; -6]\n4-5: -3 [-3; -3]", 
    p.value = "3-4: 0.030*\n3-5: 0.002*\n4-5: 0.126"), row.names = c(NA, 
-1L), class = "data.frame"))

我想将它们组合起来得到一个带标题的数据框。 我期望得到什么:

data <- structure(list(GROUP = c("3\nN=6 (86%)", "GROUP", "3\nN=6 (86%)"
), col1 = c("6.5 [5.25; 7.75]", "col3", "10.5 [9.25; 11.75]"), 
    col2 = c("9 [7.25; 10.75]", "col4", "14.5 [12.5; 15.75]"), 
    col3 = c("10.5 [9.25; 11.75]", "col5", "16.5 [15.25; 17.75]"
    ), dif = c("1-2: -3 [-3; -3]\n1-3: -5 [-5; -5]\n2-3: -2 [-2; -2]", 
    "dif", "3-4: -3 [-3; -3]\n3-5: -6 [-6; -6]\n4-5: -3 [-3; -3]"
    ), p.value = c("1-2: 0.107\n1-3: 0.013*\n2-3: 0.295", "p.value", 
    "3-4: 0.030*\n3-5: 0.002*\n4-5: 0.126")), row.names = c(NA, 
-3L), class = "data.frame")

我尝试使用:

rbindlist(data);
do.call(rbind;data)
lapply(data, setNames, names(data))

但这些都没有帮助我

使用调用

然后将第一行转换为列,然后删除第一行

tt<- do.call(rbind.data.frame, lapply(data, function(x) unname(rbind(names(x), as.matrix(x)))))
names(tt) <- tt[1,]
tt <- tt[-1,]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM