基于另一个数据框从数据框中提取行
Extracting rows from data frame based on another data frame
我正在尝试根据包含我感兴趣的基因列表的另一个数据矩阵从我的大数据集中提取一组基因(行名称)。我已经读到我应该使用 filter 和 %in% 命令,但不确定如何正确编写它。
示例:
我的大型数据库:
Gene Week1 Week 2. Week 3
A. 20. 14. 5
B. 5. 10. 15
C. 2. 4. 6
D. 20. 18. 19
我的小数据库:
Gene
A
C
D
我希望我的结果是:
Gene Week1 Week 2. Week 3
A. 20. 14. 5
C. 2. 4. 6
D. 20. 18. 19
有人可以帮忙吗?对于这个相当简单的问题,我真的很感激并表示歉意:)
使用逻辑行索引:
large_database[large_database$Gene %in% unique(small_data_base$Gene), ]
解释:
large_database$Gene %in% unique(small_data_base$Gene)
检查 large_database$Gene
中的每个条目(即行)是否出现在 unique(small_database$Gene)
中,即 small_data_base
的 Gene
列中的唯一值列表和 returns 一个布尔向量(TRUE 和 FALSE 的向量)。
然后我们可以将此向量用作行 'index' 以仅选择向量为 TRUE 的行(即 large_database$Gene
的值在 unique(small_database$Gene)
我正在尝试根据包含我感兴趣的基因列表的另一个数据矩阵从我的大数据集中提取一组基因(行名称)。我已经读到我应该使用 filter 和 %in% 命令,但不确定如何正确编写它。
示例: 我的大型数据库:
Gene Week1 Week 2. Week 3
A. 20. 14. 5
B. 5. 10. 15
C. 2. 4. 6
D. 20. 18. 19
我的小数据库:
Gene
A
C
D
我希望我的结果是:
Gene Week1 Week 2. Week 3
A. 20. 14. 5
C. 2. 4. 6
D. 20. 18. 19
有人可以帮忙吗?对于这个相当简单的问题,我真的很感激并表示歉意:)
使用逻辑行索引:
large_database[large_database$Gene %in% unique(small_data_base$Gene), ]
解释:
large_database$Gene %in% unique(small_data_base$Gene)
检查 large_database$Gene
中的每个条目(即行)是否出现在 unique(small_database$Gene)
中,即 small_data_base
的 Gene
列中的唯一值列表和 returns 一个布尔向量(TRUE 和 FALSE 的向量)。
然后我们可以将此向量用作行 'index' 以仅选择向量为 TRUE 的行(即 large_database$Gene
的值在 unique(small_database$Gene)