首页 > 解决方案 > 如何根据示例表中的信息在 R 中创建新列?

问题描述

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

       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 中创建一个新列,该列与为第二个数据帧中的每个样本指定的 Age 匹配。不过,这里有一个问题:因为这将是一个函数的一部分,每次都有未知数量的样本和不同的年龄/名称,我不能硬编码这个。有人有想法么?

标签: rtidyversedplyr

解决方案


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


推荐阅读