r - 粘贴两个数据框的列

标签 r plyr

我发现自己有时想将来自不同数据框(表,矩阵等)的列粘贴在一起。例如,我有一个均值表和一个stan devs表。我希望将两者与sd一起粘贴在一组括号中以进行 latex 打印。我怀疑有一个友好的plyr解决方案,但无法考虑如何在两个数据帧上工作(我尝试将数据帧存储为列表并使用ldply,但这是我第一次尝试使用列表plyr函数,但此举大为失败。

先感谢您。

#=========
#fake data
#=========
x<-mtcars[1:3,1:3]
y<-mtcars[1:3,8:10]


#==========================
#A column pasting function
#==========================
meansd<-function(x, y){
x<-round(x, dig=2)
y<-round(y, dig=2)
paste(x, "(", y, ")", sep="")
}

就我所知。

期望的结果
无需列名。我不在乎返回的是矩阵还是数据框。
16.46(0)  0(1)  1(4)
17.02(0)  0(1)  1(4)
18.61(1)  1(1)  1(4)

最佳答案

这是您编辑过的函数,以遍历和粘贴每一列。这样可以得到您想要的结果,但是可能有更聪明的方法可以做到这一点。

meansd<-function(x, y){
    x<-round(x, digits = 2)
    y<-round(y, digits = 2)
    out <- matrix(ncol = dim(x)[1], nrow = dim(x)[2])
    for(i in 1:dim(x)[1])
    {
        out[i, ] <-paste(x[i, ], "(", y[i, ], ")", sep="")
    }
    return(out)
}

关于r - 粘贴两个数据框的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7989307/

相关文章:

R tidyverse如何依次执行两个pivot_longer而不是单个pivot_longer

r - 根据字符串值汇总数据框

r - 如何使用 plyr mdply 并行故障安全执行

r - 在 Shiny 中选择 onChange

r - 如何在R中将向量分解为子向量

r - 尝试使用 rvest 循环命令以从多个页面抓取表

r - 模拟二元帕累托分布

r - 是否可以在 ddply 中重用生成的列?

r - 按变量中的共享值聚合行

r - 无法通过命令行或手动安装 plyr 包