워라밸 중독자

[R] match 이용해서 데이터프레임 필터링 본문

코딩, 딱 지금이 시작할때! (코딱지)

[R] match 이용해서 데이터프레임 필터링

Ufungi 2024. 6. 3. 12:48
> dat3
# A tibble: 33 × 17
   parent  node branch.length label       isTip      x     y branch  angle Taxon  Status Subtree Cluster Source Long  taxonomy
    <int> <int>         <dbl> <chr>       <lgl>  <dbl> <dbl>  <dbl>  <dbl> <chr>  <chr>    <int> <chr>   <chr>  <chr> <chr>   
 1    473     1      0.242    ASV_8678    TRUE  0.248      1 0.127   0.764 Monot… Outli…      10 10.Mon… query  no    Fungi;A…
 2    473     2      0.545    ASV_9394    TRUE  0.551      2 0.279   1.53  Monot… Outli…      10 10.Mon… query  no    Fungi;A…
 3    481     3      0.000001 TMF521      TRUE  0.140     13 0.140   9.94  1      Intru…      10 10.1    query  no    Fungi;A…
 4    481     4      0.000001 TMF538      TRUE  0.140     14 0.140  10.7   1      Intru…      10 10.1    query  no    Fungi;A…
 5    480     5      0.000001 TMF544      TRUE  0.135     12 0.135   9.17  1      Intru…      10 10.1    query  no    Fungi;A…
 6    479     6      0.0139   NR_134398_1 TRUE  0.108     11 0.101   8.41  Monot… Intru…      10 10.Mon… DB     no    Fungi;A…
 7    478     7      0.0126   NR_134391_1 TRUE  0.102     10 0.0961  7.64  2      Non-M…      10 10.2    DB     no    Fungi;A…
 8    477     8      0.0343   NR_134433_1 TRUE  0.120      9 0.103   6.88  Monot… Intru…      10 10.Mon… DB     no    Fungi;A…
 9    482     9      0.000001 NR_134336_1 TRUE  0.0832     5 0.0832  3.82  2      Non-M…      10 10.2    DB     no    Fungi;A…
10    484    10      0.00495  NR_138437_1 TRUE  0.0882     7 0.0857  5.35  2      Non-M…      10 10.2    DB     no    Fungi;A…
# ℹ 23 more rows
# ℹ 1 more variable: phylotax <chr>
# ℹ Use `print(n = ...)` to see more rows
> p_tax$data
# A tibble: 1,148 × 17
   parent  node branch.length label    isTip     x     y branch  angle Taxon     Status  Subtree Cluster Source Long  taxonomy
    <int> <int>         <dbl> <chr>    <lgl> <dbl> <dbl>  <dbl>  <dbl> <chr>     <chr>     <int> <chr>   <chr>  <chr> <chr>   
 1    473     1      0.242    ASV_8678 TRUE  0.248     1  0.127  0.764 Monotypic Outlier      10 10.Mon… query  no    Fungi;A…
 2    473     1      0.242    ASV_8678 TRUE  0.248     1  0.127  0.764 Monotypic Outlier      10 10.Mon… query  no    Fungi;A…
 3    473     2      0.545    ASV_9394 TRUE  0.551     2  0.279  1.53  Monotypic Outlier      10 10.Mon… query  no    Fungi;A…
 4    473     2      0.545    ASV_9394 TRUE  0.551     2  0.279  1.53  Monotypic Outlier      10 10.Mon… query  no    Fungi;A…
 5    481     3      0.000001 TMF521   TRUE  0.140    13  0.140  9.94  1         Intrud…      10 10.1    query  no    Fungi;A…
 6    481     3      0.000001 TMF521   TRUE  0.140    13  0.140  9.94  1         Intrud…      10 10.1    query  no    Fungi;A…
 7    481     4      0.000001 TMF538   TRUE  0.140    14  0.140 10.7   1         Intrud…      10 10.1    query  no    Fungi;A…
 8    481     4      0.000001 TMF538   TRUE  0.140    14  0.140 10.7   1         Intrud…      10 10.1    query  no    Fungi;A…
 9    480     5      0.000001 TMF544   TRUE  0.135    12  0.135  9.17  1         Intrud…      10 10.1    query  no    Fungi;A…
10    480     5      0.000001 TMF544   TRUE  0.135    12  0.135  9.17  1         Intrud…      10 10.1    query  no    Fungi;A…
# ℹ 1,138 more rows
# ℹ 1 more variable: phylotax <chr>
# ℹ Use `print(n = ...)` to see more rows
> match(dat3$node, p_tax$data$node)
 [1]  1  3  5  7  9 11 12 13 14 15 16 18 20 21 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 51 52 53 54
> # Update tree table: phylotype
> dat3 <- p_tax$data[match(dat3$node, p_tax$data$node),]
> dat3
# A tibble: 33 × 17
   parent  node branch.length label       isTip      x     y branch  angle Taxon  Status Subtree Cluster Source Long  taxonomy
    <int> <int>         <dbl> <chr>       <lgl>  <dbl> <dbl>  <dbl>  <dbl> <chr>  <chr>    <int> <chr>   <chr>  <chr> <chr>   
 1    473     1      0.242    ASV_8678    TRUE  0.248      1 0.127   0.764 Monot… Outli…      10 10.Mon… query  no    Fungi;A…
 2    473     2      0.545    ASV_9394    TRUE  0.551      2 0.279   1.53  Monot… Outli…      10 10.Mon… query  no    Fungi;A…
 3    481     3      0.000001 TMF521      TRUE  0.140     13 0.140   9.94  1      Intru…      10 10.1    query  no    Fungi;A…
 4    481     4      0.000001 TMF538      TRUE  0.140     14 0.140  10.7   1      Intru…      10 10.1    query  no    Fungi;A…
 5    480     5      0.000001 TMF544      TRUE  0.135     12 0.135   9.17  1      Intru…      10 10.1    query  no    Fungi;A…
 6    479     6      0.0139   NR_134398_1 TRUE  0.108     11 0.101   8.41  Monot… Intru…      10 10.Mon… DB     no    Fungi;A…
 7    478     7      0.0126   NR_134391_1 TRUE  0.102     10 0.0961  7.64  2      Non-M…      10 10.2    DB     no    Fungi;A…
 8    477     8      0.0343   NR_134433_1 TRUE  0.120      9 0.103   6.88  Monot… Intru…      10 10.Mon… DB     no    Fungi;A…
 9    482     9      0.000001 NR_134336_1 TRUE  0.0832     5 0.0832  3.82  2      Non-M…      10 10.2    DB     no    Fungi;A…
10    484    10      0.00495  NR_138437_1 TRUE  0.0882     7 0.0857  5.35  2      Non-M…      10 10.2    DB     no    Fungi;A…
# ℹ 23 more rows
# ℹ 1 more variable: phylotax <chr>
# ℹ Use `print(n = ...)` to see more rows