简介
集合运算类似于特殊的表格补全,利用了集合的不重复性。
数据补全:列操作
使用 left_join() 函数和 right_join() 函数可以用某个 tibble 为标准,进行表格的合并。
运行逻辑如下,以 left_join() 为例:
-
确定连接键(Key): 寻找两个表中共同拥有的列(例如
ID)。 -
扫描左表(x): 逐行读取左表中的每一条记录。
-
匹配右表(y): 对于左表的每一行,去右表中寻找
ID相同的行。 -
合并结果:
-
如果匹配成功: 将右表的对应列数据填入。
-
如果匹配失败(右表没这行): 左表的该行依然保留,但右表新增的列会填充为 NA(或 SQL 中的 NULL)。
-
如果右表有多个匹配项: 左表的该行会复制多份,分别对应右表的每一个匹配项(这可能导致结果表的行数增加)。
-
简单讲,就是在左表数据不变的情况下,实现右表数据的匹配和补充。
left_join()行操作
一些函数可以进行行操作,比如:
union():取并集intersect():取交集setdiff():取补集