開始使用免費開始

用 possibly() 轉換數值

假設你需要把 sw_people 中 Star Wars 角色的身高從公分換算成英尺。你已經知道有些身高是遺漏資料,所以會用 possibly() 把這些缺值轉成 NA。接著,將每個已有的數值乘上 0.0328084,從公分換算成英尺。

為了先了解資料,請在主控台列印 height_cm,看看以公分為單位的身高。

本練習屬於課程

使用 purrr 的函式式程式設計基礎

檢視課程

練習說明

  • 將物件 height_cm 管線輸入會回傳 double 向量的 map_*() 函式。
  • height_cm 中的每個元素換算成英尺(乘上 0.0328084)。
  • 由於不是所有元素都是數值,請使用 possibly() 將無法處理的情況替換為 NA_real_

動手互動練習

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

# Create a piped workflow that returns double vectors
___ %>%  
  map___(possibly(function(___){
  # Convert centimeters to feet
    ___ * 0.0328084
}, ___)) 
編輯並執行程式碼