开始使用免费开始使用

反连接(Anti join)

在上一个练习中,合并后的数据集没有您预期得那么大,因为并非所有艺术家都有对应的标签。反连接非常适合用来定位其他连接中的问题。

反连接会返回第一个表中在第二个表里找不到匹配的那些行。下图展示了这一原理。

An anti join, explained using table of colors.

反连接属于一种过滤连接,因为它返回的是第一个表的内容,但会根据匹配条件对其行进行筛选。

反连接的语法与左连接几乎相同:只需将 left_join() 换成 anti_join()

anti_join(a_tibble, another_tibble, by = c("id_col1", "id_col2"))

本练习是课程的一部分

R 中使用 sparklyr 的 Spark 入门

查看课程

练习说明

我们已经为您创建了名为 spark_conn 的 Spark 连接。存储在 Spark 中的曲目信息与艺术家标签分别已作为 tibble 预定义为 track_metadata_tblartist_terms_tbl

  • 使用反连接按 artist_id 列将艺术家标签与曲目信息连接。将结果赋给 joined
  • 使用 sdf_dim() 查看连接结果表的行数和列数。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# track_metadata_tbl and artist_terms_tbl have been pre-defined
track_metadata_tbl
artist_terms_tbl

# Anti join artist terms to track metadata by artist_id
joined <- ___

# How many rows and columns are in the joined table?
___
编辑并运行代码