Aggregera set för att undersöka skillnaderna
För att jämföra två enskilda set och vilka typer av LEGO-bitar de innehåller behöver vi aggregera datan i separata teman. Som vi såg i videon vill vi dessutom lägga till en kolumn som visar andelen av specifika bitar i varje set, i stället för att enbart titta på antalet bitar.
Tabellen inventory_parts_themes har förhandsladdats åt dig.
inventory_parts_themes <- inventories %>%
inner_join(inventory_parts, by = c("id" = "inventory_id")) %>%
arrange(desc(quantity)) %>%
select(-id, -version) %>%
inner_join(sets, by = "set_num") %>%
inner_join(themes, by = c("theme_id" = "id"), suffix = c("_set", "_theme"))
Den här övningen är en del av kursen
Joining Data with dplyr
Övningsinstruktioner
- Lägg till ett filter för temat
"Batman"för att skapa objektetbatman_colors. - Lägg till en kolumn
fractionibatman_colorssom visar totalen dividerad med summan av totalen. - Upprepa stegen för att filtrera och aggregera setdata för
"Star Wars"och skapa objektetstar_wars_colors. - Lägg till en kolumn
fractionistar_wars_colorssom visar andelen av totalen.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
batman_colors <- inventory_parts_themes %>%
# Filter the inventory_parts_themes table for the Batman theme
filter(name_theme == ___) %>%
group_by(color_id) %>%
summarize(total = sum(quantity)) %>%
# Add a fraction column of the total divided by the sum of the total
mutate(___)
# Filter and aggregate the Star Wars set data; add a fraction column
star_wars_colors <- inventory_parts_themes %>%
___