![](/img/trans.png)
[英]how do i filter a dataframe based on the values of a column in another dataframe in R?
[英]how to filter a dataframe column based on intersected values from another column in dataframe
您提供的代碼應該可以工作。 但是,使用intersect()
是多余的。 你應該刪除它。 此外dplyr::one_of()
已被取代,您應該使用dplyr::any_of()
。
library(tidyverse)
d1 <- tibble(sample_id = paste0("GTEX", 1:4),
ENSG1 = rnorm(4, 5, 1),
ENSG2 = rnorm(4, 50, 3),
ENSG3 = rnorm(4, 20, 7),
ENSG4 = rnorm(4, 3, 0.5))
d2 <- tibble(chr = 1:3, gene_id = c("ENSG1", "ENSG3", "ENSG4"))
d1 %>%
select(sample_id, any_of(d2$gene_id))
#> # A tibble: 4 × 4
#> sample_id ENSG1 ENSG3 ENSG4
#> <chr> <dbl> <dbl> <dbl>
#> 1 GTEX1 5.22 25.0 2.62
#> 2 GTEX2 5.99 -2.46 2.18
#> 3 GTEX3 4.56 22.0 3.29
#> 4 GTEX4 3.40 26.7 3.99
由reprex 包(v2.0.1)於 2022-07-18 創建
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.