http://rpubs.com/majlaan/kotitehtava5
Kiitos kurssista. Oli kyl yksi parhaita kursseja mitä oon yliopistossa suorittanut. Tein tän lopputyön yhdeltä istumalta, koska kandia pitäis vääntää eikä kerkii nyt muita kursseja käydä. Pitää harkita josko tekisin gradun sitten vaikka ärrällä kokonaan.
Yritin viimeisessä kotitehtävässä harjoitella datojen yhdistämistä sekä faktori-asiaa, joka on vieläkin hieman mysteeri (kaikki muukin on mysteeriä ärrän kanssa). En osannut tehdä tehtävästä yhtenäistä ja järkevää kokonaisuutta, jossa olisi ollut oikeaa analyysia.
Päätin valita dataksi tällä sivulla http://www.lounaistieto.fi/blog/category/yleinen/avoin-data/yhteiskunta-palvelut-avoin-data/ olevan työllisyyttä käsittelevän datan. Aloitin lataamalla datan koneelle.
download.file("http://opendata.lounaistieto.fi/aineistoja/tyomarkkinat.xlsx",
mode="wb", destfile = "C:/Users/Matomaja/Documents/content/tyomarkkinat.xlsx")
Seuraavaksi luin datan ärrään. Valitsin excel-tiedoston neljännen välilehden, jossa oli tietoa kuntien työttömien määrästä tammi-syyskuussa vuonna 2015.
tyottomat <- readxl::read_excel("tyomarkkinat.xlsx", sheet = 4)
print(tyottomat)
## # A tibble: 326 × 15
## TYÖTTÖMÄT `` `` `` `` `` ``
## <chr> <chr> <chr> <dbl> <dbl> <dbl> <dbl>
## 1 Nro Kunta Maakunta 42005 42036 42064 42095
## 2 020 Akaa Pirkanmaa 1170 1213 1150 1111
## 3 005 Alajärvi Etelä-Pohjanmaa 529 548 456 419
## 4 009 Alavieska Pohjois-Pohjanmaa 168 159 155 139
## 5 010 Alavus Etelä-Pohjanmaa 572 579 533 506
## 6 016 Asikkala Päijät-Häme 451 461 454 447
## 7 018 Askola Uusimaa 241 241 231 226
## 8 019 Aura Varsinais-Suomi 204 213 203 198
## 9 035 Brändö Ahvenanmaa 4 5 5 5
## 10 043 Eckerö Ahvenanmaa 27 25 23 27
## # ... with 316 more rows, and 8 more variables: `` <dbl>, `` <dbl>,
## # `` <dbl>, `` <dbl>, `` <dbl>, `` <dttm>, `` <dttm>, `` <dttm>
Muokkasin dataa poistamalla ensimmäisen rivin ja antamalla muuttujille nimet.
tyottomat <- tyottomat[-c(1), ]
names(tyottomat) <- c("nro","kunta","maakunta", "tammikuu", "helmikuu", "maaliskuu", "huhtikuu", "toukokuu", "kesakuu", "heinakuu", "elokuu", "syyskuu", "lokakuu","marraskuu", "joulukuu")
print(tyottomat)
## # A tibble: 325 × 15
## nro kunta maakunta tammikuu helmikuu maaliskuu
## <chr> <chr> <chr> <dbl> <dbl> <dbl>
## 1 020 Akaa Pirkanmaa 1170 1213 1150
## 2 005 Alajärvi Etelä-Pohjanmaa 529 548 456
## 3 009 Alavieska Pohjois-Pohjanmaa 168 159 155
## 4 010 Alavus Etelä-Pohjanmaa 572 579 533
## 5 016 Asikkala Päijät-Häme 451 461 454
## 6 018 Askola Uusimaa 241 241 231
## 7 019 Aura Varsinais-Suomi 204 213 203
## 8 035 Brändö Ahvenanmaa 4 5 5
## 9 043 Eckerö Ahvenanmaa 27 25 23
## 10 046 Enonkoski Etelä-Savo 123 115 112
## # ... with 315 more rows, and 9 more variables: huhtikuu <dbl>,
## # toukokuu <dbl>, kesakuu <dbl>, heinakuu <dbl>, elokuu <dbl>,
## # syyskuu <dbl>, lokakuu <dttm>, marraskuu <dttm>, joulukuu <dttm>
Seuraavaksi poistin datasta loka-, marras- ja joulukuut, koska näiltä kuukausilta ei ollut tietoa työttömien määrästä.
library(tidyverse)
## Loading tidyverse: ggplot2
## Loading tidyverse: tibble
## Loading tidyverse: tidyr
## Loading tidyverse: readr
## Loading tidyverse: purrr
## Loading tidyverse: dplyr
## Conflicts with tidy packages ----------------------------------------------
## filter(): dplyr, stats
## lag(): dplyr, stats
tyottomat <- tyottomat %>%
dplyr::select(nro, kunta, maakunta, tammikuu, helmikuu, maaliskuu, huhtikuu, toukokuu, kesakuu, heinakuu, elokuu, syyskuu)
Muokkasin datan vielä pitkään muotoon kuukausien osalta
library(tidyverse)
tyottomat <- tyottomat %>%
gather(., key = kuukausi, value = n, 4:12) %>%
print(tyottomat)
## # A tibble: 2,925 × 5
## nro kunta maakunta kuukausi n
## <chr> <chr> <chr> <chr> <dbl>
## 1 020 Akaa Pirkanmaa tammikuu 1170
## 2 005 Alajärvi Etelä-Pohjanmaa tammikuu 529
## 3 009 Alavieska Pohjois-Pohjanmaa tammikuu 168
## 4 010 Alavus Etelä-Pohjanmaa tammikuu 572
## 5 016 Asikkala Päijät-Häme tammikuu 451
## 6 018 Askola Uusimaa tammikuu 241
## 7 019 Aura Varsinais-Suomi tammikuu 204
## 8 035 Brändö Ahvenanmaa tammikuu 4
## 9 043 Eckerö Ahvenanmaa tammikuu 27
## 10 046 Enonkoski Etelä-Savo tammikuu 123
## # ... with 2,915 more rows
Valitsin vielä tarkastelukunnaksi ainoastaan Turun.
library(tidyverse)
tyottomat_turku <- tyottomat %>%
dplyr::filter(kunta %in% "Turku")
Tein kuukausi-muuttujasta faktorin, jotta voisin luokitella aineistoa kuvioissa kuukausien mukaan.
tyottomat_turku$kuukausi <- factor(tyottomat_turku$kuukausi,levels = c("tammikuu", "helmikuu", "maaliskuu", "huhtikuu", "toukokuu", "kesakuu", "heinakuu", "elokuu", "syyskuu"))
Ja sitten piirsin viivakuvion Turun työttömien määrän kehityksestä vuonna 2015.
library(tidyverse)
library(ggplot2)
pturku <- ggplot(data=tyottomat_turku, aes(x=kuukausi, y=n, group = 1))
pturku <- pturku + geom_line()
pturku <- pturku + labs(x="Kuukausi", y="Työttömien määrä")
pturku <- pturku + labs(title="Työttömyyden kehitys Turussa vuonna 2015")
pturku
Tarkastelin myös Helsingin työttömyyttä.
library(tidyverse)
tyottomat_helsinki <- tyottomat %>%
dplyr::filter(kunta %in% "Helsinki")
tyottomat_helsinki$kuukausi <- factor(tyottomat_helsinki$kuukausi,levels = c("tammikuu", "helmikuu", "maaliskuu", "huhtikuu", "toukokuu", "kesakuu", "heinakuu", "elokuu", "syyskuu"))
Samanlainen viivakuvio Helsingin työttömistä:
library(tidyverse)
library(ggplot2)
phelsinki <- ggplot(data=tyottomat_helsinki, aes(x=kuukausi, y=n, group = 1))
phelsinki <- phelsinki + geom_line(color= "red")
phelsinki <- phelsinki + labs(x="Kuukausi", y="Työttömien määrä")
phelsinki <- phelsinki + labs(title="Työttömyyden kehitys Helsingissä vuonna 2015")
phelsinki
Seuraavaksi yhdistin Turun ja Helsingin työttömien määrää koskevat datat
library(tidyverse)
tyottomat_turku %>%
full_join(tyottomat_helsinki)-> tyottomyys_turku_ja_helsinki
## Joining, by = c("nro", "kunta", "maakunta", "kuukausi", "n")
ja tarkastelin molempien kuntien työttömyyttä vierekkäin. Helsingissä näyttää olleen enemmän työttömiä vuonna 2015.
library(tidyverse)
library(ggplot2)
p3 <- ggplot(data=tyottomyys_turku_ja_helsinki, aes(x=kunta, y=n, group = 1))
p3 <- p3 + geom_bar(stat="identity")
p3 <- p3 + labs(x="Kunta", y="Työttömien määrä")
p3 <- p3 + labs(title="Työttömien määrä Turussa ja Helsingissä vuonna 2015")
p3
Otin tarkasteluun myös työttömyysasteen. Latasin työttömyysaste-datan seuraavalla komennolla (sama excel kuin aiemmin):
tyottomyysaste <- readxl::read_excel("tyomarkkinat.xlsx", sheet = 3)
Tein uudelle datalle samoja temppuja kuin aiemmin työttömien määrää käsittelevälle datalle.
tyottomyysaste <- tyottomyysaste[-c(1), ]
names(tyottomyysaste) <- c("nro","kunta","maakunta", "tammikuu", "helmikuu", "maaliskuu", "huhtikuu", "toukokuu", "kesakuu", "heinakuu", "elokuu", "syyskuu", "lokakuu","marraskuu", "joulukuu")
library(tidyverse)
tyottomyysaste <- tyottomyysaste %>%
dplyr::select(nro, kunta, maakunta, helmikuu, maaliskuu, huhtikuu, toukokuu, kesakuu, heinakuu, elokuu, syyskuu)
library(tidyverse)
tyottomyysaste <- tyottomyysaste %>%
gather(., key = kuukausi, value = value, 4:11)
Valitsin kuitenkin jatkotarkasteluun ainoastaan helmikuun 2015. Tämän tein koska dataa muokatessa tammikuusta tuli numeric-muuttujan sijaan character-muuttuja enkä osannut vaihtaa tammikuuta numeeriseksi.
tyottomyysaste <- tyottomyysaste %>%
dplyr::filter(kunta %in% "Helsinki"|kunta %in% "Turku") %>%
dplyr::filter(kuukausi %in% "helmikuu")
Filtteröin siis myös työllisten määrästä vain helmikuun tapaukset jatkotarkasteluun:
tyottomyys_tku_hel <- tyottomyys_turku_ja_helsinki %>%
dplyr::filter(kuukausi %in% "helmikuu")
Yhdistin uudet datat.
library(tidyverse)
tyottomyysaste %>%
left_join(tyottomyys_tku_hel)-> viimeinen_tyottomyys
## Joining, by = c("nro", "kunta", "maakunta", "kuukausi")
## Warning in left_join_impl(x, y, by$x, by$y, suffix$x, suffix$y): joining
## factor and character vector, coercing into character vector
Laskin työttömyysprosentin avulla työllisten määrän Helsingissä ja Turussa.
library(tidyverse)
viimeinen_tyottomyys <- viimeinen_tyottomyys %>%
dplyr::select(kunta, value, n)%>%
dplyr::mutate(tyolliset = n/value * 100)
Piirsin työssäkäyvien määrästä tolppakuvioita.
library(tidyverse)
library(ggplot2)
p4 <- ggplot(data=viimeinen_tyottomyys, aes(x=kunta, y=tyolliset, group = 1))
p4 <- p4 + geom_bar(stat="identity", fill="red", colour="orange", alpha = .2)
p4 <- p4 + theme_light()
p4 <- p4 + labs(x="Kunta", y="Töissäkäyvien määrä")
p4 <- p4 + labs(title="Töissäkäyvien määrä Turussa ja Helsingissä helmikuussa vuonna 2015")
p4
Lopuksi tarkastelin vielä Helsingin ja Turun työttömyysastetta.
library(tidyverse)
library(ggplot2)
p5 <- ggplot(data=viimeinen_tyottomyys, aes(x=kunta, y=value, group = 1))
p5 <- p5 + geom_bar(stat="identity", width=.2, fill="white", colour="#000000")
p5 <- p5 + theme_dark()
p5 <- p5 + labs(x="Kunta", y="Työttömyysaste %")
p5 <- p5 + labs(title="Työttömyysaste Turussa ja Helsingissä helmikuussa vuonna 2015")
p5
Tästä mahtavasta tarkastelusta voidaan vetää johtopäätöksenä se, että Turussa on määrällisesti vähemmän työttömiä kuin Helsingissä. Helsingin työttömyysprosentti on kuitenkin pienempi kuin Turussa. Lisäksi Helsingissä on määrällisesti enemmän työssäkäyviä ihmisiä kuin Turussa. Voisi ehkä pohtia miksi molemmissa kunnissa työttömien määrä kasvaa kesäkuukausina. Johtuuko ilmiö kenties opettajien määräaikaisista sopimuksista?
ps. On kyl niin kätevä tää julkaiseminen (ja julkaisun muokkaus, republish-toiminto), että tästä lähtien teen kaikki pp-esitykset ärrällä suoraan rpubsiin. Tänks!