【问题标题】:How to create a new column in R based on information in a sample table?如何根据示例表中的信息在 R 中创建新列?
【发布时间】:2021-07-05 13:44:43
【问题描述】:

我想在我的数据中创建一个新列,其中包含另一个数据框中指定的样本年龄。这是我的数据示例:

       Depth Name                                                    X Statistic Total.Cell.Number
1              B1                                                  fcs        NA             95208
2         >    B1                                     fcs/Immune Cells     43.40             41276
3       > >    B1                        fcs/Immune Cells/Single Cells     93.70             38686
4     > > >    B1                   fcs/Immune Cells/Single Cells/Live     96.90             37506
5   > > > >    B1         fcs/Immune Cells/Single Cells/Live/CD45 High      9.10              3413
6 > > > > >    B1 fcs/Immune Cells/Single Cells/Live/CD45 High/B Cells      7.76               265


这是示例信息数据框:

   Sample Age
1      B1   2
2      B2   2
3      B3   2
4      B4   2
5      B5   2
6      B6   2
7      B7  12
8      B8  12
9      B9  12
10    B10  12
11    B11  12
12    B12  12

我想在原始数据框中创建一个新列 Age,它与为第二个数据框中的每个样本指定的年龄相匹配。不过,这里有一个问题:因为这将是一个函数的一部分,每次都有未知数量的样本和不同的年龄/名称,我不能硬编码这个。有人有什么想法吗?

【问题讨论】:

  • 因此,在您的示例中,您需要 dataframe1 中的一列,其中列年龄为 B1 组。所有 B1 的 Ergo 2?
  • 是的,但数据框中还有其他样本。所以有些行有 B1,有些行有 B2,等等。

标签: r tidyverse dplyr


【解决方案1】:

dplyr::left_join(df1, sampleInfo, by = c("name" = "Sample"))

【讨论】:

    猜你喜欢
    • 2022-06-15
    • 2011-07-29
    • 1970-01-01
    • 2020-01-24
    • 1970-01-01
    • 2023-02-05
    • 1970-01-01
    • 1970-01-01
    • 2018-04-17
    相关资源
    最近更新 更多