在巢狀資料框上進行建模
你將使用美國陸軍的 ANSUR II(ANSUR II)身體量測資料集,已預先載入為 ansur_df。目標是將男女資料分別巢狀化,讓你能同時訓練 2 個線性模型,各自對應一個性別。這些模型將根據身高(stature)與腰圍(waist)來推估體重(weight)。接著你會將資料展開,檢視由 broom 套件的 glance() 函式產生的模型統計量。
已為你預先載入 dplyr、broom 與 purrr 套件。
補充說明: 在提供的程式碼中,purrr 套件的 map() 會對每個巢狀資料框套用函式。如果你喜歡在管線中使用函式,可以去看看這個套件!
本練習屬於課程
使用 tidyr 重塑資料
練習說明
- 依
sex分組資料。 - 將資料巢狀化。
- 將
glanced欄位展開。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
ansur_df %>%
# Group the data by sex
___ %>%
# Nest the data
___ %>%
mutate(
fit = map(data, function(df) lm(weight_kg ~ waist_circum_m + stature_m, data = df)),
glanced = map(fit, glance)
) %>%
# Unnest the glanced column
___