選取欄位
在 Spark 中操作資料框最簡單的方式是使用 dplyr 語法。使用 dplyr 語法操作資料框在 Data Manipulation with dplyr 與 Joining Data with dplyr 課程裡有詳細說明,不過接下來將用一章半的時間帶你掌握所有重點。
dplyr 對資料框有五個主要動作:你可以選取欄位、篩選列、調整列的順序、變更或新增欄位,以及計算摘要統計。
先從選取欄位開始。你可以呼叫 select(),以一個 tibble 為輸入,後面接著想保留的欄位名稱(不需加引號)。dplyr 函式慣例上會搭配 magrittr 的管線運算子 %>%。若要選取 x、y 和 z 這些欄位,可以這樣寫:
a_tibble %>%
select(x, y, z)
請注意,sparklyr 目前不支援中括號索引。因此你不能這麼做:
a_tibble[, c("x", "y", "z")]
本練習屬於課程
使用 R 的 sparklyr:Spark 入門
練習說明
我們已經替你建立好名為 spark_conn 的 Spark 連線。連到 Spark 中曲目中繼資料的 tibble 也已預先定義為 track_metadata_tbl。
- 使用
select()選取artist_name、release、title和year。 - 嘗試用中括號索引做同樣的事。小劇透!這段程式碼會拋出錯誤,所以已經包在
tryCatch()的呼叫裡。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# track_metadata_tbl has been pre-defined
track_metadata_tbl
# Manipulate the track metadata
track_metadata_tbl %>%
# Select columns
___
# Try to select columns using [ ]
tryCatch({
# Selection code here
___
},
error = print
)