*编辑,我查看了 StackOverflow 中的其他页面,虽然那里有很多好的资源,但我似乎仍然不了解它们的情况,对于这种情况,我试图根据名称匹配特定行subjectIDs 以便我可以创建与添加的信息匹配的列。任何有关方法的建议将不胜感激。
我对如何执行这种形式的数据整理有点困惑,因为我是 R 编码的新手。我的目标是将 subjectID 信息与这个大数据集相匹配,该数据集的行数比 subjectID 数据的行数多。这是因为大数据与一组受试者有多个会话。例如,主题 A 的数据的行名称为 SubjectA-01、SubjectA-02、SubjectB-1202、SubjectB-W2D1 等。
我的目标是将 SubjectID 名称与大数据集匹配,以便我可以添加新列(性别、年龄、BMI 等)作为与数据相关的列。
我们可以将此数据框称为 SubjectInfo
主题 ID | 性别 | 年龄 |
---|---|---|
主题A | M | 32 |
主题C | F | 23 |
主题B | F | 16 |
我想用这个信息来匹配这个矩阵中的开始关键字。 我们将此数据集称为 BioResults。
样本ID | 验血结果 |
---|---|
主题C-GH21 | 2.22 |
主题A-01 | 2.34 |
主题A-02 | 2.55 |
主题B-12 | 3.56 |
我的目标是制作一个如下所示的新数据集:
样本ID | 验血结果 | 性别 | 年龄 |
---|---|---|---|
主题C-GH21 | 2.22 | F | 23 |
主题A-01 | 2.34 | M | 32 |
主题A-0122 | 2.55 | M | 32 |
主题B-Q32 | 3.56 | F | 16 |
这是我尝试这个的第一步。首先删除主题名称上的数字和字母,使两个主题名称相同。
BioResults$SampleID <- gsub("-.*", "", BioResults$SampleID)
但是,我现在似乎仍然难以匹配来自 SubjectInfo$SampleID 的数据和 BioResults$SampleID 的数据,因此我可以根据与主题匹配的行。
如果您对此有任何帮助,我将不胜感激。我确实看到其他 Stack Overflow 讨论使用 left_join()、right_join() 等进行数据操作,但我似乎仍然对这组代码和方法感到困惑。
谢谢!