Läs R4DS kapitel 13.
Lös övningskapitel Mutating joins och Filtering joins and set operations på DataCamp.
Hur vädertåliga är fågelskådare? Filen data/smhi-opendata_5_98210_20180126_123122.csv
innehåller nederbördsdata från SMHI. Koppla ihop dessa med fågelobservationerna från HW2 för att undersöka ifall observatörerna är mindre aktiva regniga dagar.
Vid förra tillfället arbetade ni med ett material över antalet besök i tandvården
tandvård <- read_csv2("data/Statistikdatabasen_2018-01-23 14_46_26.csv", skip = 1, n_max = 580)
kombinera detta med filen data/BE0101A5.csv
, som innehåller populationsmängd för kommunerna, för att bestämma antalet besök per invånare.
Pokemon finns i flera typer, t.ex. eld-, vatten- och gräs-typ, vilket påverkar deras styrkor och svagheter i strid. Några pokemon är av dubbeltyp, och har då två typegenskaper. En lista på pokemon hittar ni på
library(tidyverse)
pokemon <- read_csv("https://raw.githubusercontent.com/veekun/pokedex/master/pokedex/data/csv/pokemon.csv")
head(pokemon)
## # A tibble: 6 x 8
## id identifier species_id height weight base_experience order
## <int> <chr> <int> <int> <int> <int> <int>
## 1 1 bulbasaur 1 7 69 64 1
## 2 2 ivysaur 2 10 130 142 2
## 3 3 venusaur 3 20 1000 236 3
## 4 4 charmander 4 6 85 62 5
## 5 5 charmeleon 5 11 190 142 6
## 6 6 charizard 6 17 905 240 7
## # ... with 1 more variables: is_default <int>
(Mac-användare kan behöva paketet Curl
för att läsa direkt från en https
), en lista på olika typer på
types <- read_csv("https://raw.githubusercontent.com/veekun/pokedex/master/pokedex/data/csv/types.csv")
head(types)
## # A tibble: 6 x 4
## id identifier generation_id damage_class_id
## <int> <chr> <int> <int>
## 1 1 normal 1 2
## 2 2 fighting 1 2
## 3 3 flying 1 2
## 4 4 poison 1 2
## 5 5 ground 1 2
## 6 6 rock 1 2
och slutligen en lista som länkar pokemon till deras typ på
pokemon_types <- read_csv("https://raw.githubusercontent.com/veekun/pokedex/master/pokedex/data/csv/pokemon_types.csv")
head(pokemon_types)
## # A tibble: 6 x 3
## pokemon_id type_id slot
## <int> <int> <int>
## 1 1 12 1
## 2 1 4 2
## 3 2 12 1
## 4 2 4 2
## 5 3 12 1
## 6 3 4 2
Här kan vi t.ex. se att Pokemon nr 1 (bulbasaur) är av typ 12 (grass) och typ 4 (poison). Koppla ihop tabellerna så att slutprodukten blir som nedan och undersök hur vikt/längd beror på typ.
head(tabell)
## # A tibble: 6 x 6
## pokemon_id identifier slot1 slot2 height weight
## <int> <chr> <chr> <chr> <int> <int>
## 1 1 bulbasaur grass poison 7 69
## 2 2 ivysaur grass poison 10 130
## 3 3 venusaur grass poison 20 1000
## 4 4 charmander fire <NA> 6 85
## 5 5 charmeleon fire <NA> 11 190
## 6 6 charizard fire flying 17 905