開始使用免費開始

用 lapply 搭配 R 內建函式

在開始解題前,先查看 lapply() 的文件。Usage 區段會看到以下用法:

lapply(X, FUN, ...)

一般來說,lapply 會接受一個向量或清單 X,並把函式 FUN 套用到 X 的每個成員上。若 FUN 需要其他引數,就在指定完 XFUN 後面傳入(...)。lapply() 的輸出是一個清單,長度與 X 相同,其中每個元素都是把 FUN 套用到對應 X 元素後的結果。

既然你正在紮實提升資料科學技能,讓我們回顧資料科學史上一些重要人物。我們整理了一個包含知名數學家/統計學家以及他們出生年份的向量。接下來就交給你來擷取一些資訊吧!

本練習屬於課程

R 中級

檢視課程

練習說明

  • 先看看 strsplit() 的呼叫,它會以 : 號將 pioneers 的字串切開。結果 split_math 是個包含 4 個字元向量的清單:每個向量的第一個元素是姓名,第二個元素是出生年份。
  • 使用 lapply()split_math 中的字元向量轉成小寫:把 tolower() 套用到 split_math 的每個元素。把結果(清單)指定給新變數 split_low
  • 最後,用 str() 檢視 split_low 的內容。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# The vector pioneers has already been created for you
pioneers <- c("GAUSS:1777", "BAYES:1702", "PASCAL:1623", "PEARSON:1857")

# Split names from birth year
split_math <- strsplit(pioneers, split = ":")

# Convert to lowercase strings: split_low


# Take a look at the structure of split_low
編輯並執行程式碼