Inżynieria cech w R
Jorge Zazueta
Research Professor and Head of the Modeling Group at the School of Economics, UASLP
Przypisuje numer indeksu każdemu przewoźnikowi na podstawie wartości tekstowych.

Zbiór danych flights zawiera przewoźników jako czynniki, ale nie wiemy, czy nowi przewoźnicy pojawią się w nowych danych.
flights %>%
select(carrier) %>%
table()
carrier
9E AA AS B6 DL EV F9 FL HA MQ OO UA US VX WN YV
859 1744 26 2503 2619 3014 38 186 14 1540 2 3367 1228 244 757 41
Możemy tworzyć hashe dummy reprezentujące wartości czynników, używając pakietu textrecipes.
recipe <- recipe(~carrier,
data = flights_train) %>%
step_dummy_hash(carrier, prefix = NULL,
signed = FALSE,
num_terms = 50L)
# Prep the recipe
object <- recipe %>%
prep()
# Bake the recipe object with new data
baked <- bake(object,
new_data = flights_test)
Podgląd reprezentacji step_dummy_hash().
bind_cols(flights_test$carrier,baked)[1:6,c(1,18:20)]
New names:
• `` -> `...1`
# A tibble: 10 × 4
...1 `_carrier_17` `_carrier_18` `_carrier_19`
<chr> <int> <int> <int>
1 EV 0 0 0
2 B6 0 1 0
3 EV 0 0 0
4 MQ 0 0 0
5 DL 0 0 0
6 EV 0 0 0
Do wizualizacji macierzy możemy użyć pakietu plot.matrix.
flights_hash <-
as.matrix(baked)[1:50,]
plot(flights_hash,
col = c("white","steelblue"),
key = NULL,
border = NA)

Inżynieria cech w R