如何将两个不同的ID统一为一个,然后将两个ID应用于df,但是在R中仅对主题计数一次?

Tong Claire Xu

对于同一受试者(患者),我有两个不同的ID。在此另一个ID向量中,两个ID都位于其中,表示同一位患者。我如何只对患者计数一次(通过ID1),而不是对两个具有不同ID的不同患者进行计数?

ID1 ID2 
 11 12
 13 14
 15 16

向量

11,12,13,13,14,16

我只想按ID1计算唯一身份患者,这样我就可以

x=11,13,15

谢谢!

阿尼尔·戈亚尔(AnilGoyal)

我想你可能需要这个

df %>% filter((ID1 %in% vector) | (ID2 %in% vector)) %>%
   select(ID1)

  ID1
1  11
2  13
3  15

在更好的样本上检查

df <- structure(list(ID1 = c(11L, 13L, 15L, 17L, 19L, 21L), ID2 = c(12L, 
14L, 16L, 18L, 20L, 22L)), class = "data.frame", row.names = c(NA, 
-6L)

> df
  ID1 ID2
1  11  12
2  13  14
3  15  16
4  17  18
5  19  20
6  21  22


vector <- c(11, 12, 13, 13, 14, 16, 18, 18)

> df %>% filter((ID1 %in% vector) | (ID2 %in% vector)) %>% select(ID1)
  
   ID1
1  11
2  13
3  15
4  17

通过稍微修改Ronak的代码,您可以获得相同的结果

df %>%
  mutate(ID = row_number()) %>%
  tidyr::pivot_longer(cols = c(ID1, ID2)) %>%
  inner_join(tibble::enframe(vector), by = 'value') %>%
  distinct(ID, .keep_all = T) %>%
  select(ID, value) %>%
  inner_join(df %>% mutate(ID = row_number()), by = 'ID') %>%
  select(ID1)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

F#将功能一次应用于两个列表

来自分类Dev

如何将两个ID合并到一个列中?

来自分类Dev

将两个方程应用于一个数组

来自分类Dev

如何将SmartyStreets验证应用于同一页面中的两个表单?

来自分类Dev

如何将SmartyStreets验证应用于同一页面中的两个表单?

来自分类Dev

sed将两个搜索条件应用于一行,然后替换

来自分类Dev

将两个不同的利率集应用于同一类别的两个对象

来自分类Dev

如何将两个不同的查询合并到一个表中?

来自分类Dev

如何将两个不同的数组放在一个数组中

来自分类Dev

如何一次在两个列表中应用一个函数?

来自分类Dev

如何将一个表中另一个表具有多个ID的两个表联接在一起?

来自分类Dev

如果一次可见两个片段,如何将数据从一个片段传递到另一个片段

来自分类Dev

Angular2:如何将两个或多个验证器应用于同一控件?

来自分类Dev

Nodejs - 如何将函数应用于两个流的每一行组合?

来自分类Dev

如何一次将两列与 python (pandas) 中的两个不同数据框进行比较?

来自分类Dev

有条件地将两个函数之一应用于一个参数

来自分类Dev

如何将两个列表统一合并到字典中

来自分类Dev

如何使用mapply将函数应用于两个不同数据帧中的两个不同列

来自分类Dev

CMake:如何将一个目标安装到两个名称不同的地方?

来自分类Dev

如何将一个数组分成两个不同的数组?

来自分类Dev

如何将两个不同的列表映射到一个列表?

来自分类Dev

如何将两个不同函数的总数求和成一个新函数?

来自分类Dev

如何将这两个不同的LINQ查询合并为一个?

来自分类Dev

如何将一个数组拆分为两个不同的数组?

来自分类Dev

如何将一个文件同时链接到两个不同的流?

来自分类Dev

如何将两个不同的拼写组合为一个

来自分类Dev

如何将两个不同的列表映射到一个列表?

来自分类Dev

如何将一个记录转换为两个记录,然后将其插入表中?

来自分类Dev

Bash:如何将这两个if语句压缩为一个

Related 相关文章

  1. 1

    F#将功能一次应用于两个列表

  2. 2

    如何将两个ID合并到一个列中?

  3. 3

    将两个方程应用于一个数组

  4. 4

    如何将SmartyStreets验证应用于同一页面中的两个表单?

  5. 5

    如何将SmartyStreets验证应用于同一页面中的两个表单?

  6. 6

    sed将两个搜索条件应用于一行,然后替换

  7. 7

    将两个不同的利率集应用于同一类别的两个对象

  8. 8

    如何将两个不同的查询合并到一个表中?

  9. 9

    如何将两个不同的数组放在一个数组中

  10. 10

    如何一次在两个列表中应用一个函数?

  11. 11

    如何将一个表中另一个表具有多个ID的两个表联接在一起?

  12. 12

    如果一次可见两个片段,如何将数据从一个片段传递到另一个片段

  13. 13

    Angular2:如何将两个或多个验证器应用于同一控件?

  14. 14

    Nodejs - 如何将函数应用于两个流的每一行组合?

  15. 15

    如何一次将两列与 python (pandas) 中的两个不同数据框进行比较?

  16. 16

    有条件地将两个函数之一应用于一个参数

  17. 17

    如何将两个列表统一合并到字典中

  18. 18

    如何使用mapply将函数应用于两个不同数据帧中的两个不同列

  19. 19

    CMake:如何将一个目标安装到两个名称不同的地方?

  20. 20

    如何将一个数组分成两个不同的数组?

  21. 21

    如何将两个不同的列表映射到一个列表?

  22. 22

    如何将两个不同函数的总数求和成一个新函数?

  23. 23

    如何将这两个不同的LINQ查询合并为一个?

  24. 24

    如何将一个数组拆分为两个不同的数组?

  25. 25

    如何将一个文件同时链接到两个不同的流?

  26. 26

    如何将两个不同的拼写组合为一个

  27. 27

    如何将两个不同的列表映射到一个列表?

  28. 28

    如何将一个记录转换为两个记录,然后将其插入表中?

  29. 29

    Bash:如何将这两个if语句压缩为一个

热门标签

归档