【问题标题】:merging two dataframes in R在R中合并两个数据框
【发布时间】:2023-03-06 00:11:01
【问题描述】:

我的数据框中有 139104 行的数据,是 96x1449 的倍数。我有一个表型文件,其中包含 96 个样本的表型信息。 snp 名称重复 1449X96 个样本。我必须基于 sid 和 sen 合并两个数据框。这就是我的两个数据框的样子

dat <- data.frame(
    snpname=rep(letters[1:12],12),
    sid=rep(1:12,each=12), 
    genotype=rep(c('aa','ab','bb'), 12)
)
pheno <- data.frame(
    sen=1:12,
    disease=rep(c('N','Y'),6), 
    wellid=1:12
)

我必须将疾病列和其他 3 个列合并或添加到数据文件中。我无法在 R 中使用合并。我搜索了谷歌,我没有找到正确的术语来获得答案。我将不胜感激有关此问题的任何意见。

谢谢,莎拉德

【问题讨论】:

  • dat &lt;- merge(dat, pheno, by.x = "sid", by.y = "sen", all=TRUE)
  • 对于以后的使用,不要错过snpMatrix(基因型数据的高效存储,快速 GLM)、snpAssoc(用户友好)或GenABEL 包。大多数允许构建特定的结构(或环境,使用GGtools)来操作和合并基因型和表型数据。
  • @Ista,下次发帖作为答案。这样一来,你就可以得到一点回报。

标签: r merge


【解决方案1】:

您可以直接使用merge() 指定要匹配的列:

merge(dat, pheno, by.x = "sid", by.y = "sen")

【讨论】:

    猜你喜欢
    • 2014-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-01
    • 2020-10-16
    相关资源
    最近更新 更多