Commit eefbfd54 authored by Helmer Belbo's avatar Helmer Belbo
Browse files

A complete rebuilding of the entire package

parent fc09f512
YEAR: 2020
COPYRIGHT HOLDER: Helmer Belbo
# MIT License
Copyright (c) 2020 Helmer Belbo
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
# Generated by roxygen2: do not edit by hand
export(ld.fylke.mnd)
export(ld.kommune)
export("%>%")
export(regnavn.at.ref.yr)
export(regnavn.at.ref.yr2)
export(t03794)
export(t03895)
export(t06216)
export(t12750)
importFrom(dplyr,mutate)
importFrom(magrittr,"%>%")
importFrom(rlang,":=")
#' Regioninndeling kommunevis siden 1994
#'
#' En tabell som viser endringer i kommunenes navn og nummer fra utgangspunkt
#' januar 1994 fram til nå. Tabellen kan benyttes sammen med
#' SSB regional statistikk (på kommunenivå) for å koble observasjoner fra
#' tidligere år til dagens kommunestruktur.
#' SSB info: \url{https://www.ssb.no/klass/klassifikasjoner/131}
#'
#' januar 1994 fram til naa. Tabellen kan benyttes sammen med
#' SSB regional statistikk (paa kommunenivaa) for aa koble observasjoner fra
#' tidligere aar til dagens kommunestruktur.
#' SSB info: https://www.ssb.no/klass/klassifikasjoner/131
#'
#'
#' @format En tibble med 436 rader (436 kommuner i '94) og 26 variabler:
......@@ -15,8 +13,8 @@
#' \item{reg_name_199401}{Regionnavn januar 1994; chr "Halden" "Moss" ...}
#' \item{reg_code_200201}{Regionkode januar 2002; chr "0101" "0104"...}
#' \item{reg_name_200201}{Regionnavn januar 2002; chr "Halden" "Moss" ...}
#' \item{...code...}{fortsetter på samme vis til 2020}
#' \item{...name...}{fortsetter på samme vis til 2020}
#' \item{...code...}{fortsetter paa samme vis til 2020}
#' \item{...name...}{fortsetter paa samme vis til 2020}
#' }
"regref_kommune"
......@@ -26,57 +24,99 @@
#'
#' En tabell som viser endringer i kommunenes navn og nummer fra utgangspunkt
#' januar 1994 fram til nå. Tabellen kan benyttes sammen med
#' SSB regional statistikk (på kommunenivå) for å koble observasjoner fra
#' tidligere år til dagens kommunestruktur.
#' Fylkesinndelingen og endringer er hentet her: \url {https://www.ssb.no/klass/klassifikasjoner/104}
#' SSB regional statistikk (paa kommunenivaa) for aa koble observasjoner fra
#' tidligere aar til dagens kommunestruktur.
#' Fylkesinndelingen og endringer er hentet her https://www.ssb.no/klass/klassifikasjoner/104
#'
#' @format En tibble med 20 rader (20 fylker i '94) og 8 variabler:
#' \describe{
#' \item{reg_code_199401}{Regionkode januar 1994; chr "01" "02"...}
#' \item{reg_name_199401}{Regionnavn januar 1994; chr "Østfold" "Akershus" ...}
#' \item{reg_name_199401}{Regionnavn januar 1994; chr "Oestfold" "Akershus" ..}
#' \item{reg_code_200607}{Regionkode juli 2006; chr "01" "02"...}
#' \item{reg_name_200607}{Regionnavn juli 2006; chr "Østfold" "Akershus" ...}
#' \item{...code...}{fortsetter på samme vis til 2020}
#' \item{...name...}{fortsetter på samme vis til 2020}
#' \item{reg_name_200607}{Regionnavn juli 2006; chr "Oestfold" "Akershus" ...}
#' \item{...code...}{fortsetter paa samme vis til 2020}
#' \item{...name...}{fortsetter paa samme vis til 2020}
#' }
"regref_fylke"
#' Hogstvolum fordelt på kommune, sortiment, år fra 1996
#' Hogstvolum fordelt paa kommune, sortiment, aar fra 1996
#'
#' Data fra SSB: \url {https://www.ssb.no/statbank/table/03014}
#' Data fra SSB at https://www.ssb.no/statbank/table/03014
#'
#' @format data.frame med om lag 172k obs og 11 variabler:
#' \describe{
#' \item{region}{Navn på kommunen (på hogsttidspunkt); chr "Hele landet" "Halden" ...}
#' \item{kategoritekst}{Sortimentnavn; chr "Gran spesialtømmer" "Furu sekunda sagtømmer" ...}
#' \item{region}{Navn paa kommunen (paa hogsttidspunkt); chr "Hele landet" "Halden" ...}
#' \item{kategoritekst}{Sortimentnavn; chr "Gran spesialtoemmer" "Furu sekunda sagtoemmer" ...}
#' \item{statistikkvariabel}{ ; chr "Kvantum rundvirke avvirket for salg" "Kvantum rundvirke avvirket for salg"...}
#' \item{ar}{Årstall; int "1996" "1997" ...}
#' \item{ar}{Aarstall; int "1996" "1997" ...}
#' \item{volum_m3pris}{Volum (avregningsvolum, 1000 m3): int 12 36 85 125 }
#' \item{region_kode}{Kommunenummer på registreringstidspkt: chr "0" "0101" "0102"}
#' \item{region_kode}{Kommunenummer paa registreringstidspkt: chr "0" "0101" "0102"}
#' \item{virkeskategori}{virkeskategori chr "1110" "1141" "1143" "1148" "1160" "1410" "1490" "2110" "2141" "2143" "2148" "2160" "2410" "2490" "3120" "3400" "3800" "1800"}
#' \item{treslag}{chr "Gran" "Furu" "Lauv" "Ukjent"}
#' \item{sortimentgruppe}{sortimentgruppe chr "tømmer" "sams" "massevirke" "annet"}
#' \item{sortimentgruppe}{sortimentgruppe chr "toemmer" "sams" "massevirke" "annet"}
#' \item{reg_n2020}{Regionnavn pr 2020 chr "Hele landet" "Halden" "Moss" "Sarpsborg" "Fredrikstad"}
#' \item{reg_k2020}{Regionkode pr 2020 chr "0301" "1101" "1103" "1106" "1108" "1111" "1112" "1114"}
#' }
"m3_sortiment_kmn"
#' Virkesverdi fordelt på kommune, sortiment, år fra 1996
#' Virkesverdi fordelt paa kommune, sortiment, aar fra 1996
#'
#' Data fra SSB: \url {https://www.ssb.no/statbank/table/03794}
#' Data fra SSB: https://www.ssb.no/statbank/table/03794
#'
#' @format data.frame med om lag 9542 obs og 7 variabler:
#' \describe{
#' \item{region}{Navn på kommunen (på hogsttidspunkt); chr "Hele landet" "Halden" ...}
#' \item{kategoritekst}{Sortimentnavn; chr "Gran spesialtømmer" "Furu sekunda sagtømmer" ...}
#' \item{region}{Navn paa kommunen (paa hogsttidspunkt); chr "Hele landet" "Halden" ...}
#' \item{kategoritekst}{Sortimentnavn; chr "Gran spesialtoemmer" "Furu sekunda sagtoemmer" ...}
#' \item{statistikkvariabel}{ ; chr "Bruttoverdi" "Bruttoverdi"}
#' \item{ar}{Årstall; int "1996" "1997" ...}
#' \item{ar}{Aarstall; int "1996" "1997" ...}
#' \item{bruttoverdi}{Brutto verdi av solgt industrivirke NOK: int 2709220 2877766 2608427 ... }
#' \item{reg_n2020}{Regionnavn (kommunenavn) pr 2020 chr "Hele landet" "Halden" "Moss" "Sarpsborg" "Fredrikstad"}
#' \item{reg_k2020}{Regionkode (kommunekode) pr 2020}
#' }
"virkesverdi_kmn"
#' Hogststatistikk per fylke, sortiment, mnd, ... fra 2014
#'
#' Data fra Landbruksdirektoratets hogststatistikk
#'
#' @format tibble med om lag 19k obs og 13 variabler
#' \describe{
#' \item{FYLKENR }{Nr paa fylke (paa hogsttidspunkt); chr "01" "01" ...}
#' \item{FYLKENAVN}{; "Østfold" "Østfold" ...}
#' \item{AVVIRKAAR}{årstall; num 2014 2014 2014 ...}
#' \item{KVARTAL}{kvartal; num 1 1 1 ...}
#' \item{AVVIRKMND}{Aarstall; num 1 1 1 ...}
#' \item{SORTKODE}{Sortimentkode : chr "01" "01" "01" ...}
#' \item{SORTIMENT}{Sortimentnavn: chr "Sagtømmer" "Sagtømmer" ... }
#' \item{VIRKESGRP}{Virkesgruppe; chr "1-Gran" "1-Gran" "2-Furu" "3-Lauv" "5-Ved" ... }
#' \item{VIRKESKAT}{Virkeskategori; chr "1110" "1140" "1148" ...}
#' \item{KATEGORITEKST}{sortimentgruppe chr "Gran spesial" "Gran sagtømmer sams" }
#' \item{TOTALVOLUM}{m3; num 3440 14215 ...}
#' \item{TOTALVERDI}{kr; num 1599470 6898324 703000 ...}
#' \item{M3PRIS}{kr pr m3; num 465 485 263 398 3 ...}
#' }
"hogst_fylke_ld"
#' Hogststatistikk per kommune, sortiment, år, ... fra 2014
#'
#' Data fra Landbruksdirektoratets hogststatistikk
#'
#' @format tibble med om lag 20k obs og 13 variabler
#' \describe{
#' \item{FYLKENR }{Nr paa fylke (paa hogsttidspunkt); chr "01" "01" ...}
#' \item{FYLKENAVN}{; "Østfold" "Østfold" ...}
#' \item{KOMNR}{Nr paa kommune (på hogsttidspunkt); chr "0101" "0101" ...}
#' \item{KOMNAVN}{; "HALDEN" "HALDEN" ...}
#' \item{AVVIRKAAR}{årstall; num 2014 2014 2014 ...}
#' \item{SORTKODE}{Sortimentkode : chr "01" "01" "01" ...}
#' \item{SORTIMENT}{Sortimentnavn: chr "Sagtømmer" "Sagtømmer" ... }
#' \item{VIRKESGRP}{Virkesgruppe; chr "1-Gran" "1-Gran" "2-Furu" "3-Lauv" "5-Ved" ... }
#' \item{VIRKESKAT}{Virkeskategori; chr "1110" "1140" "1148" ...}
#' \item{KATEGORITEKST}{sortimentgruppe chr "Gran spesial" "Gran sagtømmer sams" }
#' \item{TOTALVOLUM}{m3; num 3440 14215 ...}
#' \item{TOTALVERDI}{kr; num 1599470 6898324 703000 ...}
#' \item{M3PRIS}{kr pr m3; num 465 485 263 398 3 ...}
#' }
"hogst_kommune_ld"
#' LD: Fylkesvis pr mnd
#' @description fylkesvise hogstdata fra landbruksdirektoratets excel-filer
#'
#' Filene ligger i mappen ./inst/ekstdata og behver derfor ikke hentes.
#'
#' @return a tibble with logging statistics
#' @param Behøver ingen parametere. Datafilene ligger i egen folder.
#' @export
#'
#' @examples devtools::install_github("hbelbo/vsop")
#' ld.fylke.mnd()
ld.fylke.mnd = function(){
files <- list.files(path = (system.file("extdata", package = "vsop")) ,
pattern = ".xlsx", full.names = T) %>%
.[which(!stringr::str_detect(., "~"))] %>%
.[which(stringr::str_detect(., "Fylkesvis avvirkning pr måned "))]
df = readxl::read_xlsx(path = files[1], sheet = 1, skip = 2, col_names = T)[NULL, ]
for (i in seq_along(files)){
df = rbind(df, readxl::read_xlsx(path = files[i], sheet = 1, skip = 2, col_names = T))
}
return(df)
}
#' LD: Kommunevis
#'
#' @return a tibble with logging statistics
#' @param Behøver ingen parametere. Datafilene ligger i egen folder.
#' @export
#'
#' @examples
#' ld.kommune()
ld.kommune = function(){
files <- list.files(path = (system.file("extdata", package = "vsop")) ,
pattern = ".xlsx", full.names = T) %>%
.[which(!stringr::str_detect(., "~"))] %>%
.[which(stringr::str_detect(., "Kommunevis avvirkning"))]
df = readxl::read_xlsx(path = files[1], sheet = 1, skip = 2, col_names = T)[NULL, ]
for (i in seq_along(files)){
df = rbind(df, readxl::read_xlsx(path = files[i], sheet = 1, skip = 2, col_names = T))
}
return(df)
}
#' Region navn og region kode for gitt år
#' Region navn og region kode for gitt tidspunkt
#'
#' Denne funksjonen tar regionkoder og regionnavn fra en regional statistikk,
#' tar inn tabell som viser historiske endringer i regional inndeling av Norge
......@@ -9,177 +8,57 @@
#' @param regionstat is the regional statistics, where each obs represent one yar
#' and one region (fylke eller kommune)
#' @param ref.yr is the reference year to which geographic name and code is to be used
#' @param reg_level is the region level in the regionstat ("fylke" | kommune")
#'
#' @return tibble having the regional statistics including the regional
#' names and codes for the reference year in question
#' @export
#' @importFrom rlang :=
#' @importFrom dplyr mutate
#'
#'
#' @examples regnavn.at.ref.yr(regionstat = t12750(), ref.yr = 2020 ) %>% glimpse()
regnavn.at.ref.yr <- function(regionstat, ref.yr = lubridate::year(now()), reg_level = "fylke"){
#' @examples regnavn.at.ref.yr(regionstat = t12750()) %>% glimpse()
regnavn.at.ref.yr <- function(regionstat, ref.yr = lubridate::year(lubridate::now())){
# regionstat = t12750() #for testing
regionstat <- as_tibble(regionstat)
if (!"aar" %in% names(regionstat)) {
w <- which(tolower(names(regionstat)) %in% c("ar", "år") )
regionstat$aar = as.numeric(pull(regionstat[,w]))
}
# Fetch the relevant region reference table regref
if (reg_level == "fylke") { regref <- regref_fylke
} else {regref <- regref_kommune}
if (nchar(regionstat$region_kode[1]) == 2) {
regref <- vsop::regref_fylke_l #regref_fylke_l is a table created in the DATASET script saved in the "data" directory
} else {
regref <- vsop::regref_kommune_l #regref_kommune_l is a table created in the DATASET script saved in the "data" directory
}
# harmonizing
ref.yr = as.integer(ref.yr)
print("")
print("Regref:")
glimpse(regref)
# Fetching from regref
regref <- as.data.frame(regref, stringsAsFactors = F)
regref_n <- names(regref) #their column names
regref_yr <- as.integer(stringr::str_extract(names(regref), "\\d{4}")) #year
regref_typ <- stringr::str_sub(regref_n, 5, 8) # type (code / name)
print("regref_yr and regref_typ wrapped in tibble:")
glimpse(tibble(regref_yr = regref_yr, regref_typ = regref_typ))
print("Samples from regionstat before adding regref_ref.yr_col_code:")
glimpse(regionstat[seq.int(1, dim(regionstat)[1], length.out = 10), ])
regionstat <-
regionstat %>%
dplyr::mutate(.,
# for each obs in regionstat: tag which column in
# regref one should fetch the name and code
# when to fit with the ref.yr.
regref_ref.yr_col_code =
max( which(regref_yr <= ref.yr & regref_typ == "code") ),
regref_ref.yr_col_name =
max( which(regref_yr <= ref.yr & regref_typ == "name") ))
print("Samples from regionstat after adding regref_ref.yr_col_code:")
glimpse(regionstat[seq.int(1, dim(regionstat)[1], length.out = 10), ])
regionstat <-
regionstat %>%
dplyr::mutate(.,
# For each obsrv in the regionstat:
# which column in regref the "aar" belongs to;
# = ar_regref_col_rcode and ar_regref_col_rname
yr_regref_col_rcode = purrr::pmap_int(., .f = function(aar, ...){
max( which( regref_yr <= aar & regref_typ == "code") )
}),
yr_regref_col_rname = purrr::pmap_int(., .f = function(aar, ...){
max( which( regref_yr <= aar & regref_typ == "name") )
}))
print("Samples from regionstat after adding yr_regref_col_rcode:")
glimpse(regionstat[seq.int(1, dim(regionstat)[1], length.out = 10), ])
regionstat <-
regionstat %>%
dplyr::mutate(.,
# if each regionstat$region is present in the column in regref
# corresponding to the year of observation in regionstat
# = recode_regref_row
regcode_in_regrefcol = purrr::pmap_lgl(., .f = function(region_kode, yr_regref_col_rcode, ...){
case_when(
region_kode %in% regref[, yr_regref_col_rcode] ~ T,
TRUE ~ F)
}),
# and which row in regref the region_code belongs to:
# = recode_regref_row
regcode_regref_row = purrr::pmap_int(., .f = function(region_kode, yr_regref_col_rcode, ...){
case_when(
region_kode %in% regref[, yr_regref_col_rcode] ~
which( regref[, yr_regref_col_rcode] == region_kode)[1] ,
TRUE ~ NA_integer_)
})
) %>%
#
dplyr::mutate(.,
valid_reg =
dplyr::case_when(
regcode_in_regrefcol | region_kode == "0" ~ T,
TRUE ~ F))
print("Samples from regionstat after adding valid_reg:")
glimpse(regionstat[seq.int(1, dim(regionstat)[1], length.out = 10), ])
regionstat <- regionstat %>%
dplyr::filter(., valid_reg == TRUE) %>%
# Then we have indexes needed to pick the right row and column
# to populate both reg_k@ref.yr and reg_n@ref.yr
dplyr::mutate(.,
!!sym(paste0("reg_n", ref.yr)) := coalesce(regref[cbind(regcode_regref_row, regref_ref.yr_col_name)], region),
!!sym(paste0("reg_k", ref.yr)) := coalesce(regref[cbind(regcode_regref_row, regref_ref.yr_col_code)], region_kode)
)
return(regionstat)
}
ref.yr <- as.integer(ref.yr)
# identify which row in regref the region_code and observation year belongs to:
#' Region navn og region kode for gitt år v2
#'
#' Denne funksjonen tar regionkoder og regionnavn fra en regional statistikk,
#' tar inn tabell som viser historiske endringer i regional inndeling av Norge
#' og gjør om til riktige koder og navn for et gitt referanseår (ref.yr)
#' Funksjonen fungerer for fylkesnivå inkludert landet ELLER for kommunenivå.
#'
#' @param regionstat is the regional statistics, where each obs represent one yar
#' and one region (fylke eller kommune)
#' @param ref.yr is the reference year to which geographic name and code is to be used
#'
#' @return tibble having the regional statistics including the regional
#' names and codes for the reference year in question
#' @export
#'
#' @examples regnavn.at.ref.yr2(regionstat = t12750()) %>% glimpse()
regnavn.at.ref.yr2 <- function(regionstat){
# regionstat = t12750() #for testing
# Fetch the relevant region reference table regref
if (nchar(regionstat$region_kode[1]) == 2) {
regref <- regref_fylke_l
} else {regref <- regref_kommune_l }
# harmonizing
ref.yr <- as.integer(year(now()))
regionstat <-
regionstat %>%
dplyr::mutate(.,
dplyr::mutate(
# which row in regref the region_code and observation year belongs to:
regrefrow = purrr::pmap_int(., .f = function(region_kode, aar, ...){
regrefrow = purrr::pmap_int(regionstat, .f = function(region_kode, aar, ...){
# 1: check if exists a part of regref where "region_code_from" == region_kode AND yfrom <= aar
tmprr <-
regref %>%
filter(., reg_code_from == region_kode, yfrom <= aar)
dplyr::filter(regref, reg_code_from == region_kode, yfrom <= aar)
if (nrow(tmprr) > 0 ) {
# yes then tag which row in regref the region_code and observation year belongs to. regref reference row
rrr <- max( which(regref$reg_code_from == region_kode & regref$yfrom <= aar))
} else {
rrr <- NA_integer_
}
return(rrr)
})) %>%
dplyr::filter(., !is.na(regrefrow)) %>%
dplyr::filter( !is.na(regrefrow)) %>%
# Then we have index needed to pick the right row
# to populate both reg_k@ref.yr and reg_n@ref.yr
dplyr::mutate(.,
!!sym(paste0("reg_n", ref.yr)) := coalesce(regref$reg_name_to[(regrefrow)], region),
!!sym(paste0("reg_k", ref.yr)) := coalesce(regref$reg_code_to[(regrefrow)], region_kode)
dplyr::mutate(
!!rlang::sym(paste0("reg_n", ref.yr)) := regref$reg_name_to[(regrefrow)],
!!rlang::sym(paste0("reg_k", ref.yr)) := regref$reg_code_to[(regrefrow)]
)
......
##### t03794
#' Skogsavvirkning bruttoverdi t03794
#'
#' bruttoverdi per år av tømmer, SSB tabell 03794
#' bruttoverdi per aar av toemmer, SSB tabell 03794
#'
#' Tabellen gir totalverdi av tømmer solgt per år og geografisk enhet, fra 1996 til 2018.
#' Litt usikker om energivirkesortimenter og ved er med.
......@@ -34,23 +34,24 @@ t03794 <- function(region_level = 'fylke'){
ContentsCode = T # 10i)
)
regioner_utvalg <- # identify regions havreing volumes
dplyr::as.tbl(pxdt[[1]]) %>%
dplyr::rename(., bruttoverdi = value) %>%
regioner_utvalg <- # identify regions having volumes
tibble::as_tibble(pxdt[[1]]) %>%
dplyr::rename( bruttoverdi = value) %>%
dplyr::group_by(region) %>%
dplyr::summarize(., volumtot = sum(bruttoverdi, na.rm = T)) %>%
dplyr::filter(., volumtot > 0) %>%
dplyr::pull(., region)
dplyr::summarize( volumtot = sum(bruttoverdi, na.rm = T)) %>%
dplyr::filter( volumtot > 0) %>%
dplyr::ungroup() %>%
dplyr::pull(region)
ds <- dplyr::as.tbl(pxdt[[2]]) %>%
dplyr::rename(., region_kode = Region, ar = Tid)
ds <- tibble::as_tibble(pxdt[[2]]) %>%
dplyr::rename( region_kode = Region)
bruttov <- dplyr::as.tbl(pxdt[[1]]) %>%
bruttov <- tibble::as_tibble(pxdt[[1]]) %>%
dplyr::rename(., ar = år, bruttoverdi = value) %>%
dplyr::bind_cols(., (ds %>% dplyr::select(., region_kode))) %>%
dplyr::filter(., region %in% regioner_utvalg) %>%
dplyr::mutate(., ar = as.integer(ar))
dplyr::rename( bruttoverdi = value) %>%
dplyr::bind_cols( (ds %>% dplyr::select( region_kode, Tid))) %>%
dplyr::filter( region %in% regioner_utvalg) %>%
dplyr::mutate( aar = as.integer(Tid))
return(bruttov)
......@@ -58,10 +59,10 @@ t03794 <- function(region_level = 'fylke'){
##### t12750
#' Skogsavvirkning priser t12750
#' prisstatistikk for tømmer fra SSB tabell 12750
#' prisstatistikk for virke fra SSB tabell 12750
#'
#' Tabellen gir snittpris per sortiment på fylkesnivå, fra 2006 til 2018.
#' Virke blir også klassifisert på treslag og sortimentgrupper (tømmmer, massevirke, sams, annet)
#' Tabellen gir snittpris per sortiment per fylke, fra 2006 til 2018.
#' Virke blir klassifisert per treslag og sortimentgrupper (tømmmer, massevirke, sams, annet)
#' https://www.ssb.no/statbank/list/skogav
#'
#' @return en tibble med hele datasetet.
......@@ -82,19 +83,19 @@ t12750 <- function(){
Tid = T,
Treslag = T
)
regioner_utvalg <- dplyr::as.tbl(pxdt[[2]]) %>%
dplyr::group_by(Region) %>% dplyr::summarize(., harpris = sum(value, na.rm = T)) %>%
dplyr::filter(., harpris > 0) %>%
dplyr::select(., Region) %>% dplyr::pull(.)
ds <- as.tbl(pxdt[[2]]) %>%
rename(., region_kode = Region, ar = Tid, virkeskategori = Treslag, Pris = value) #Modding variable names
priser <- dplyr::as.tbl(pxdt[[1]]) %>%
dplyr::rename(., ar = år, kategoritekst = sortiment, pris = value) %>%
dplyr::bind_cols(., (ds %>% dplyr::select(., region_kode, virkeskategori))) %>%
dplyr::filter(., region_kode %in% regioner_utvalg) %>%
dplyr::mutate(.,
regioner_utvalg <- tibble::as_tibble(pxdt[[2]]) %>%
dplyr::group_by(Region) %>% dplyr::summarize( harpris = sum(value, na.rm = T)) %>%
dplyr::filter( harpris > 0) %>%
dplyr::select( Region) %>% dplyr::pull()
ds <- tibble::as_tibble(pxdt[[2]]) %>%
dplyr::rename( region_kode = Region, virkeskategori = Treslag, Pris = value) #Modding variable names
priser <- tibble::as_tibble(pxdt[[1]]) %>%
dplyr::rename( kategoritekst = sortiment, pris = value) %>%
dplyr::bind_cols(., (ds %>% dplyr::select(region_kode, virkeskategori, Tid))) %>%
dplyr::filter(region_kode %in% regioner_utvalg) %>%
dplyr::mutate(
treslag = dplyr::case_when(
stringr::str_detect(kategoritekst, "Gran") ~ "Gran",
stringr::str_detect(kategoritekst, "Furu") ~ "Furu",
......@@ -108,7 +109,7 @@ t12750 <- function(){
stringr::str_sub(virkeskategori, 1,2) %in% c("14", "24", "34") ~ "massevirke",
TRUE ~ "annet"
),
ar = as.numeric(ar)
aar = as.integer(Tid)
)
return(priser)
}
......@@ -141,23 +142,22 @@ t06216 <- function(){ # NB: avslutta, tidsserie 1996 - 2017
Region = fylker,
Tid = T,
Treslag = T )
regioner_utvalg <- dplyr::as.tbl(pxdt[[2]]) %>%
regioner_utvalg <- tibble::as_tibble(pxdt[[2]]) %>%
dplyr::group_by(Region) %>% dplyr::summarize(., harpris = sum(value, na.rm = T)) %>%
dplyr::filter(., harpris > 0) %>%
dplyr::pull(., Region)
dplyr::filter( harpris > 0) %>%
dplyr::pull( Region)
priser <- as.tbl(pxdt[[1]]) %>%
dplyr::rename(., kategoritekst = sortiment, pris = value)
priser <- tibble::as_tibble(pxdt[[1]]) %>%
dplyr::rename( kategoritekst = sortiment, pris = value)
ds <- dplyr::as.tbl(pxdt[[2]]) %>%
dplyr::rename(., region_kode = Region, ar = Tid, virkeskategori = Treslag, Pris = value) #Correcting missleading variable names
ds <- tibble::as_tibble(pxdt[[2]]) %>%
dplyr::rename( region_kode = Region, virkeskategori = Treslag, Pris = value) #Correcting missleading variable names
priser <-
priser %>% dplyr::bind_cols(., (ds %>% dplyr::select(., region_kode, virkeskategori))) %>%
dplyr::filter(., region_kode %in% regioner_utvalg) %>%
dplyr::mutate(.,
treslag = dplyr::case_when(
priser %>% dplyr::bind_cols(., (ds %>% dplyr::select( region_kode, virkeskategori, Tid))) %>%
dplyr::filter( region_kode %in% regioner_utvalg) %>%
dplyr::mutate( treslag = dplyr::case_when(
stringr::str_detect(kategoritekst, "Gran") ~ "Gran",
stringr::str_detect(kategoritekst, "Furu") ~ "Furu",
stringr::str_detect(kategoritekst, "Lauvtre") ~ "Lauv",
......@@ -170,7 +170,7 @@ t06216 <- function(){ # NB: avslutta, tidsserie 1996 - 2017
stringr::str_sub(virkeskategori, 1,2) %in% c("14", "24", "34") ~ "massevirke",
TRUE ~ "annet"
),
ar = as.numeric(ar)
aar = as.integer(Tid)
)
return(priser)
}
......@@ -190,7 +190,7 @@ t06216 <- function(){ # NB: avslutta, tidsserie 1996 - 2017
#'
#' @examples
#' t03895()
t03895 <- function(region_level = 'fylke'){ # 1996 - 2018
t03895 <- function(region_level = "fylke"){ # 1996 - 2018
if ( !(region_level %in% c("fylke", "kommune"))) { stop("warning: to get result, region_level should be one of 'fylker', 'kommune'" )}
metadt <- PxWebApiData::ApiData("http://data.ssb.no/api/v0/no/table/03895", returnMetaData = TRUE)
......@@ -210,22 +210,22 @@ t03895 <- function(region_level = 'fylke'){ # 1996 - 2018
)
regioner_utvalg <-
dplyr::as.tbl(pxdt[[1]]) %>%
dplyr::rename(., volum_m3pris = value) %>%