Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- library(xml2)
- library(tidyverse)
- from_file <- function(filename) {
- print(filename)
- read_xml(filename) %>%
- xml_find_all('.//VALDISTRIKT') %>%
- map_df(~{
- KOD <- xml_attr(.x, 'KOD')
- VOTES <- xml_attr(.x, 'RÖSTER')
- .x %>%
- xml_find_all('.//GILTIGA') %>%
- map_df(~{
- xml_attrs(.x) %>%
- as.list() %>%
- as.data.frame() %>%
- transmute(KOD = as.character(KOD),
- district_total_votes = as.integer(as.character(VOTES)),
- party = as.character(PARTI),
- votes = as.integer(as.character(RÖSTER)))
- })
- })
- }
- # Data från https://data.val.se/val/val2018/valnatt/valnatt.zip
- # uppackad till ~/tmp/valnatt nedan
- df <- tibble(filename = list.files('~/tmp/valnatt/', '.*[0-9]{4}R.xml', full.names = TRUE)) %>%
- mutate(data = map(filename, from_file)) %>%
- unnest()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement