开始使用免费开始使用

Mother's little helper (2)

一种更通用的列匹配方式是检查列名是否在任意位置包含某个值(而不是以该值开头或结尾)。正如您可能已经猜到的,可以使用名为 contains() 的辅助函数来完成。

更进一步,您可以使用正则表达式来匹配列。正则表达式(简称 "regexes")是一种用于匹配文本的强大语言。若想系统学习正则表达式,建议学习课程 *String Manipulation with stringr in R *。目前,您只需了解三点:

  1. a:字母表示"匹配该字母"。
  2. .:点号表示"匹配任意字符,包括字母、数字、标点等"。
  3. ?:问号表示"前一个字符是可选的"。

您可以使用 matches() 这个 select 辅助函数来找到与特定正则表达式匹配的列。

本练习是课程的一部分

R 中使用 sparklyr 的 Spark 入门

查看课程

练习说明

已经为您创建了名为 spark_conn 的 Spark 连接。存储在 Spark 中的曲目元数据已作为 tibble 预定义为 track_metadata_tbl

  • track_metadata_tbl 中选择所有包含 "ti" 的列。
  • track_metadata_tbl 中选择所有匹配正则表达式 "ti.?t" 的列。

交互式实操练习

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

# track_metadata_tbl has been pre-defined
track_metadata_tbl

track_metadata_tbl %>%
  # Select columns containing ti
  ___

track_metadata_tbl %>%
  # Select columns matching ti.?t
  ___
编辑并运行代码