Kom igångKom igång gratis

PCA i tidymodels

Ur ett modellbyggnadsperspektiv gör PCA det möjligt att skapa modeller med färre särdrag, men som ändå fångar det mesta av informationen i ursprungsdata. Som du har sett är en nackdel med PCA att modellen kan vara svår att tolka. I den här övningen bygger du en linjär regressionsmodell med hjälp av en delmängd av husförsäljningsdata. Målvariabeln är price.

En modell som byggs direkt från datan utan att extrahera principalkomponenter har ett RMSE på $236 461,4. Du ska tillämpa PCA med tidymodels och jämföra det nya RMSE-värdet. Kom ihåg att lägre RMSE är bättre.

Paketen tidyverse och tidymodels har redan laddats in åt dig.

Den här övningen är en del av kursen

Dimensionsreduktion i R

Visa kurs

Övningsinstruktioner

  • Bygg ett PCA-recept med train för att extrahera fem principalkomponenter.
  • Anpassa ett arbetsflöde med en standardspecifikation för linear_reg()-modellen.
  • Skapa en dataram med testprediktioner med hjälp av test, som innehåller de faktiska och de predikterade värdena.
  • Beräkna RMSE för den linjära regressionsmodellen med PCA-reducerade data.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Build a PCA recipe
pca_recipe <- ___(___ ~ ___ , data = ___) %>% 
  ___(___()) %>% 
  ___(___(), num_comp = ___) 

# Fit a workflow with a default linear_reg() model spec
house_sales_fit <- ___(preprocessor = ___, spec = ___()) %>% 
  ___(___)

# Create prediction df for the test set
house_sales_pred_df <- ___(___, test) %>% 
  ___(test %>% select(___))

# Calculate the RMSE
___(house_sales_pred_df, ___, .pred)
Redigera och kör kod