【发布时间】:2020-06-23 18:59:30
【问题描述】:
我认为这个问题的答案在文档中正盯着我看,但也许我只是在放屁,我想不通。
假设我有两张患者表,表 a 和表 b。
我知道两个表中的相同患者有一些重叠,我将加入他们的病历。
我想从 B 中获取所有我可能没有的新患者,并将它们添加到我预先存在的表 A 中。我只想留下 A 中的列,并且我不需要来自 A 的任何新列B. 两者之间可能存在重叠的列,如果它们在此上合并也很好,但病历编号是重要的。您会使用什么类型的联接?
谢谢
【问题讨论】:
-
或许
semi_join -
@akrun 刚刚尝试了 semi_join,在它只保留表 A 中的列的意义上工作正常,但它删除了在 B 中找不到的患者。所以 A 现在少了。我希望 A 从 B 那里获得所有新患者,所以 A 会成长。如果这有意义?
-
在这种情况下,可能是
full_join -
@akrun 刚刚尝试了 full_join,它从 B 中引入了我不需要的所有新列(尽管它确实吸引了患者)。我想我可以删除那些列,但它就像 300 个新列..
-
我将在 B.
B[c(1, 3, 5, 10)]中加入所需的感兴趣的列子集,然后使用full_join