<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>
    
    R Analystatistics Sweden
    </title>
    <link>http://mikaellundqvist.rbind.io/</link>
    <description>Recent content 
    on R Analystatistics Sweden
    </description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    
    
    <lastBuildDate>Sun, 24 Oct 2021 00:00:00 +0000</lastBuildDate>
    
    
        <atom:link href="http://mikaellundqvist.rbind.io/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>Suggestion for limiting the boundaries for causal effects</title>
      <link>http://mikaellundqvist.rbind.io/2021/10/24/suggestion-for-limiting-the-boundaries-for-causal-effects/</link>
      <pubDate>Sun, 24 Oct 2021 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2021/10/24/suggestion-for-limiting-the-boundaries-for-causal-effects/</guid>
      <description>


&lt;p&gt;Congratulations to Joshua Angrist and Guido Imbens for the Nobel Prize for their work with causality. This post will also be about causality, although not from the work of Angrist or Imbens. A year ago I read The Book of Why by Judea Pearl and Dana MacKenzie. The Book of Why states that you can make causal conclusions from observational data if you know the directed acyclical graph (DAG) of the processes that has created the data. The Book of Why also states that you can not create the DAG based on data alone, i.e. you can not have the data as an input to an algorithm and get the DAG and its causal implications as output. The Book of Why also explains that Judea Pearl has studied Bayesian networks before he began his work with DAGs and causality. I hypothesise that some DAGS are more probable than other DAGs based on the statistics of the data. I am examining if there are ways to get boundaries of the causal effects that variables can have on each other within a limited system. I will use structure learning algorithms for Bayesian networks. I will take no regard to unmeasured confounders. This work is ongoing and the results are as is. I will use data from Statistics Sweden, for more information about the data see my previous posts.&lt;/p&gt;
&lt;p&gt;Statistics Sweden use NUTS (Nomenclature des Unités Territoriales Statistiques), which is the EU’s hierarchical regional division, to specify the regions.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library(tidyverse)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.3.5     v purrr   0.3.4
## v tibble  3.1.5     v dplyr   1.0.7
## v tidyr   1.1.4     v stringr 1.4.0
## v readr   2.0.2     v forcats 0.5.1&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;ggplot2&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;tibble&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;tidyr&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;readr&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;dplyr&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;forcats&amp;#39; was built under R version 4.0.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library(gtools)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;gtools&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library(pcalg)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;pcalg&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library(imputeMissings)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;imputeMissings&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;imputeMissings&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     compute&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library(bnlearn)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;bnlearn&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;bnlearn&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:imputeMissings&amp;#39;:
## 
##     impute&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:pcalg&amp;#39;:
## 
##     dsep, pdag2dag, shd, skeleton&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library(dagitty)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;dagitty&amp;#39; was built under R version 4.0.4&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;dagitty&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:bnlearn&amp;#39;:
## 
##     ancestors, children, descendants, parents, spouses&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:pcalg&amp;#39;:
## 
##     randomDAG&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library(AER)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;AER&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: car&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;car&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;carData&amp;#39; was built under R version 4.0.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:gtools&amp;#39;:
## 
##     logit&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: lmtest&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;lmtest&amp;#39; was built under R version 4.0.4&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: zoo&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;zoo&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;zoo&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:base&amp;#39;:
## 
##     as.Date, as.Date.numeric&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: sandwich&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;sandwich&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: survival&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;survival&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library(lavaan)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;lavaan&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## This is lavaan 0.6-9
## lavaan is FREE software! Please report any bugs.&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library(semPlot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;semPlot&amp;#39; was built under R version 4.0.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library(psych)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;psych&amp;#39; was built under R version 4.0.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;psych&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:lavaan&amp;#39;:
## 
##     cor2cov&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:car&amp;#39;:
## 
##     logit&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:gtools&amp;#39;:
## 
##     logit&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:ggplot2&amp;#39;:
## 
##     %+%, alpha&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;readfile &amp;lt;- function (file1){read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%
  gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = groupsize) %&amp;gt;%
  drop_na() %&amp;gt;%
  mutate (year_n = parse_number (year))
}

perc_women &amp;lt;- function(x){  
  ifelse (length(x) == 2, x[2] / (x[1] + x[2]), NA)
} 

nuts &amp;lt;- read.csv(&amp;quot;nuts.csv&amp;quot;) %&amp;gt;%
  mutate(NUTS2_sh = substr(NUTS2, 3, 4))

nuts %&amp;gt;% 
  distinct (NUTS2_en) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Nomenclature des Unités Territoriales Statistiques (NUTS)&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-1&#34;&gt;Table 1: &lt;/span&gt;Nomenclature des Unités Territoriales Statistiques (NUTS)&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;NUTS2_en&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE11 Stockholm&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE12 East-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE21 Småland and islands&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE22 South Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE23 West Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE31 North-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE32 Central Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE33 Upper Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;# normalize data
tonormest &amp;lt;- function(tablearg){
  norm_recipe &amp;lt;- recipes::recipe( ~ ., data = tablearg) %&amp;gt;%
     recipes::step_normalize(recipes::all_numeric())

  prepare &amp;lt;- recipes::prep(norm_recipe, training = tablearg)

  return (recipes::bake(prepare, new_data = tablearg))
}

# not in set
`%nin%` = Negate(`%in%`)

# create a set of arcs not allowed in model
createblacklist &amp;lt;- function(coln, exogenous, endogenous = NULL){
  rbind(
    expand.grid(endogenous, coln[coln %nin% endogenous]),
    expand.grid(coln[coln %nin% exogenous], exogenous))
}

# list of models in bnlearn to evaluate
bnmodels &amp;lt;- list(
  h2pc = function(x, blacklist = blacklist) bnlearn::h2pc(x, blacklist = blacklist),
  hpc = function(x, blacklist = blacklist) bnlearn::hpc(x, blacklist = blacklist),
  fast.iamb = function(x, blacklist = blacklist) bnlearn::fast.iamb(x, blacklist = blacklist),
  inter.iamb = function(x, blacklist = blacklist) bnlearn::inter.iamb(x, blacklist = blacklist),
  si.hiton.pc = function(x, blacklist = blacklist) bnlearn::si.hiton.pc(x, blacklist = blacklist),
  iamb.fdr = function(x, blacklist = blacklist) bnlearn::iamb.fdr(x, blacklist = blacklist),
  iamb = function(x, blacklist = blacklist) bnlearn::iamb(x, blacklist = blacklist),
  gs = function(x, blacklist = blacklist) bnlearn::gs(x, blacklist = blacklist),
  mmpc = function(x, blacklist = blacklist) bnlearn::mmpc(x, blacklist = blacklist),
  pc = function(x, blacklist = blacklist) bnlearn::pc.stable(x, blacklist = blacklist),
  hc = function(x, blacklist = blacklist) bnlearn::hc(x, blacklist = blacklist),
  tabu = function(x, blacklist = blacklist) bnlearn::tabu(x, blacklist = blacklist),
  mmhc = function(x, blacklist = blacklist) bnlearn::mmhc(x, blacklist = blacklist),
  rsmax2 = function(x, blacklist = blacklist) bnlearn::rsmax2(x, blacklist = blacklist))

# evaluate all models on a dataset given a blacklist
evaluatemodel &amp;lt;- function(tablearg, blacklist){
  evalslfunc &amp;lt;- function(f){
    sltree &amp;lt;- f (data.frame(map(tablearg, inttonumeric)), blacklist = blacklist)
    neltree &amp;lt;- as.graphNEL(sltree)
    bg &amp;lt;- addBgKnowledge(neltree)
    if (length(bg) == 0){return (Inf)}
    g &amp;lt;- dagitty(pcalg2dagitty(t(as(bg, &amp;quot;matrix&amp;quot;)), colnames(tablearg), type = &amp;quot;dag&amp;quot;))
    r &amp;lt;- localTests(
      g,
      tablearg, &amp;quot;cis&amp;quot;,
      sample.cov = lavCor(tablearg),
      sample.nobs = nrow( tablearg ),
      max.conditioning.variables = 2,
      R = 100)
    if (dim(r)[1] == 0){return (0)}
    return(mean(abs(r$estimate)))
  }

  return(data.frame(lapply(bnmodels, evalslfunc)))
}

# Change all variables of integer type to a numeric type
inttonumeric &amp;lt;- function(x){
  if(is.integer(x)){
    return(as.numeric(x))
  }
  else{
    return(x)
  }
}

# create a structured model from a dataset and a structured learning algorithm
createmodel &amp;lt;- function(tablearg, f, blacklist){
   sltree &amp;lt;- f (data.frame(map(tablearg, inttonumeric)), blacklist = blacklist)
   neltree &amp;lt;- as.graphNEL(sltree)
   bg &amp;lt;- addBgKnowledge(neltree)
   g &amp;lt;- dagitty(pcalg2dagitty(t(as(bg, &amp;quot;matrix&amp;quot;)), colnames(tablearg), type = &amp;quot;dag&amp;quot;))

   return(g)
}

# change the sign from dagitty syntax to lavaan syntax
changesign &amp;lt;- function(s){
  if(s == &amp;quot;-&amp;gt;&amp;quot;){
    return(&amp;quot;~&amp;quot;)
  }
  if (s == &amp;quot;--&amp;quot;){
    return(&amp;quot;~~&amp;quot;)
  }
}


# create a list of all combinations of variables, one variable from each factor from the factor analysis, and subsets thereof
allcombn &amp;lt;- function(gridarg){
  allcombn_worker &amp;lt;- function(gridarg){
    sumcomb &amp;lt;- vector()
    for(i in data.frame(t(gridarg))){
      subcomb &amp;lt;- combn(i, length(gridarg) - 1)
      for(j in data.frame(subcomb)){
        sumcomb &amp;lt;- rbind(sumcomb, j)
      }
    }
    return(unique(sumcomb))
  }  
  
  sumcomb &amp;lt;- list()
  sumcomb &amp;lt;- append(sumcomb, split(gridarg, seq(nrow(gridarg))))
  subcomb &amp;lt;- allcombn_worker(gridarg)
  if(length(data.frame(subcomb)) &amp;gt; 0){
    sumcomb &amp;lt;- append(sumcomb, allcombn(data.frame(subcomb)))
  }
  return(sumcomb)
}

# convert a list of variables, use each list element as a blacklist, find the structured learning algorithm with the lowest deviance, use that algorithm and create a model
# return:
# model with the lowest deviance
# the deviances for the different models
# the name of the algorithm with the lowest deviance 
combtodag &amp;lt;- function(mycomb, tablearg){
  summary_table &amp;lt;- vector()
  for(i in 1:length(mycomb)){
    j &amp;lt;- unlist(mycomb[i])
    blacklist &amp;lt;- createblacklist(colnames(tablearg), j)
    evaluatedmodel &amp;lt;- evaluatemodel(tablearg, blacklist)
    g &amp;lt;- createmodel(tablearg, match.fun(colnames(sort(evaluatedmodel)) [1]), blacklist)
    v &amp;lt;- as.character(j)
    length(v) &amp;lt;- 5
    summary_table &amp;lt;- rbind(summary_table, c(as.character(g), t(evaluatedmodel), v,  colnames(sort(evaluatedmodel)) [1]))
  }
  return(summary_table)
}

# calculate the causal effect of the variable from to variable to using all models in listofmodels using all minimal adjustment sets that are given by the model
calceffect &amp;lt;- function(listofmodels, from, to, tablearg){
  summary_table &amp;lt;- vector()
  expadjsets &amp;lt;- function(adjsets){
    paste0(to, &amp;quot; ~ &amp;quot;, from, &amp;quot; + &amp;quot;, paste(unlist(adjsets), collapse = &amp;quot; + &amp;quot;))
  }
  calclmeffect &amp;lt;- function(eq){
    (summary(lm(as.formula(eq), tablearg)) %&amp;gt;% broom::tidy())[2,]
  }
  for(i in 1:nrow(data.frame(listofmodels))){
    g &amp;lt;- as.dagitty(listofmodels[i, 1])
    exogenous &amp;lt;- listofmodels[i, 16:20]
    adjsets &amp;lt;- adjustmentSets(g, from, to)
    if(is.null(unlist(adjsets)) &amp;amp; (length(adjsets) == 1)){
      eq &amp;lt;- paste(to, &amp;quot; ~ &amp;quot;,  from)
    } else {
      if(length(adjsets) &amp;gt; 0){
        eq &amp;lt;- map(adjsets, expadjsets)
      } else{
         eq &amp;lt;- NULL
      }
    }
    
    if (!is.null(eq)){
      mytest &amp;lt;- map(unlist(eq), calclmeffect)
    } else{
      mytest &amp;lt;- NULL
    }

    v &amp;lt;- as.character(exogenous)
    length(v) &amp;lt;- 5
    v1 &amp;lt;- t(data.frame(v))
    colnames(v1) &amp;lt;- c(&amp;quot;1&amp;quot; , &amp;quot;2&amp;quot;, &amp;quot;3&amp;quot;, &amp;quot;4&amp;quot;, &amp;quot;5&amp;quot;)
    if(!is.null(mytest)){
      summary_table &amp;lt;- rbind(summary_table, cbind(Reduce(&amp;#39;rbind&amp;#39;, mytest), t(data.frame(eq)), v1))
    }
  }
  return(summary_table)
}

# create an SEM model for each dagitty model and return a table containing the estimated parameters of the fitted model and a variety of fit measures for each model
dagitty2sem &amp;lt;- function(mycomb, tablearg){
  summary_table &amp;lt;- vector()
  summary_table2 &amp;lt;- vector()
  for(i in 1:nrow(data.frame(mycomb))){
    g &amp;lt;- as.dagitty(mycomb[i, 1])
    exogenous &amp;lt;- mycomb[i, 16:20]
    fit &amp;lt;- suppressWarnings(sem(paste(dagityy2lavaan(g, exogenous), collapse = &amp;#39;&amp;#39;), data = tablearg))
    fit_m &amp;lt;- fitmeasures(fit)
    v &amp;lt;- as.character(exogenous)
    length(v) &amp;lt;- 5
    sumfit &amp;lt;- parameterEstimates(fit)
    summary_table2 &amp;lt;- rbind(summary_table2, cbind(sumfit, matrix(v, ncol = 5, nrow = nrow(sumfit), byrow = TRUE)))
    summary_table &amp;lt;- rbind(summary_table, c(t(fit_m), v))
  }

  summary_table &amp;lt;- cbind(summary_table[,43:47], data.frame(map(data.frame(summary_table[,1:42]), as.numeric)))
  colnames(summary_table) &amp;lt;- c(c(&amp;quot;1&amp;quot; , &amp;quot;2&amp;quot;, &amp;quot;3&amp;quot;, &amp;quot;4&amp;quot;, &amp;quot;5&amp;quot;), names(fit_m))

  summary_table2 &amp;lt;- summary_table %&amp;gt;% 
    left_join(summary_table2, by = c(&amp;quot;1&amp;quot; , &amp;quot;2&amp;quot;, &amp;quot;3&amp;quot;, &amp;quot;4&amp;quot;, &amp;quot;5&amp;quot;))

  return(summary_table2)
}

# convert a model with dagitty syntax to lavaan syntax. Relations between exogenous variables will be replaced by correlations
dagityy2lavaan &amp;lt;- function(model_arg, exogenous){
  temp &amp;lt;- str_split(model_arg, &amp;quot;\n&amp;quot;) %&amp;gt;%
    unlist()
  temp &amp;lt;- lapply(&amp;quot;-&amp;gt;|--&amp;quot;, grep, x = temp, value = TRUE) %&amp;gt;%
    unlist() %&amp;gt;%
    data.frame() %&amp;gt;%
    as_tibble()
  
  colnames(temp) &amp;lt;- &amp;quot;data&amp;quot;

  temp &amp;lt;- temp %&amp;gt;% 
    rowwise() %&amp;gt;% 
    mutate(lhs = unlist(str_split(data, &amp;quot; &amp;quot;))[1]) %&amp;gt;% 
    mutate(rhs = unlist(str_split(data, &amp;quot; &amp;quot;))[3]) %&amp;gt;% 
    mutate(sign = unlist(str_split(data, &amp;quot; &amp;quot;))[2])

  # one variable can be exogenous but not both
  endorel &amp;lt;- 
    temp %&amp;gt;% dplyr::filter(!(lhs %in% exogenous &amp;amp; rhs %in% exogenous))
  exorel &amp;lt;- temp %&amp;gt;% 
    dplyr::filter(lhs %in% exogenous &amp;amp; rhs %in% exogenous)

  exorel$sign &amp;lt;- &amp;quot;--&amp;quot;

  temp &amp;lt;- data.frame(rbind(endorel, exorel)) %&amp;gt;%
    rowwise() %&amp;gt;% mutate(mydata3 = paste(rhs, changesign(sign), lhs, &amp;quot;\n&amp;quot;))

  return(temp$mydata3)
}

filtergt0_3 &amp;lt;- function(loadings){
  loadings &amp;lt;- data.frame(loadings)
  rownames(loadings) &amp;lt;- rownames(factorloadings)
  rownames(loadings)[which(abs(loadings) &amp;gt; 0.3)]
}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data tables are downloaded from Statistics Sweden. They are saved as a comma-delimited file without heading, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The tables:&lt;/p&gt;
&lt;p&gt;UF0506A1_20210926-160849.csv: Population 16-74 years of age by region, highest level of education, age and sex. Year 1985 - 2020 NUTS 2 level 2008- 10 year intervals (16-74)&lt;/p&gt;
&lt;p&gt;000000CG_20210926-160057.csv: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2020 Monthly salary All sectors.&lt;/p&gt;
&lt;p&gt;000000CD_20210926-160259.csv: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2020 Number of employees All sectors.&lt;/p&gt;
&lt;p&gt;The data is aggregated, the size of each group is in the column groupsize.&lt;/p&gt;
&lt;p&gt;I have also included some calculated predictors from the original data.&lt;/p&gt;
&lt;p&gt;nremployees: The number of employees in each group defined by ssyk, edulevel, region and year&lt;/p&gt;
&lt;p&gt;perc_women: The percentage of women within each group defined by ssyk, edulevel, region and year&lt;/p&gt;
&lt;p&gt;perc_women_region: The percentage of women within each group defined by ssyk, year and region&lt;/p&gt;
&lt;p&gt;regioneduyears: The average number of education years per capita within each group defined by ssyk, year and region&lt;/p&gt;
&lt;p&gt;eduquotient: The quotient between regioneduyears for men and women&lt;/p&gt;
&lt;p&gt;salaryquotient: The quotient between salary for men and women within each group defined by ssyk, year and region&lt;/p&gt;
&lt;p&gt;perc_women_ssyk_region: The percentage of women within each group defined by ssyk, year and region&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;numedulevel &amp;lt;- read.csv(&amp;quot;edulevel_1.csv&amp;quot;) 

numedulevel[, 2] &amp;lt;- data.frame(c(8, 9, 10, 12, 13, 15, 22, NA))

tb &amp;lt;- readfile(&amp;quot;000000CG_20210926-160057.csv&amp;quot;) 
tb &amp;lt;- readfile(&amp;quot;000000CD_20210926-160259.csv&amp;quot;) %&amp;gt;% 
  left_join(tb, by = c(&amp;quot;region&amp;quot;, &amp;quot;year&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;,&amp;quot;occuptional  (SSYK 2012)&amp;quot;)) 

tb &amp;lt;- readfile(&amp;quot;UF0506A1_20210926-160849.csv&amp;quot;) %&amp;gt;%  
  right_join(tb, by = c(&amp;quot;region&amp;quot;, &amp;quot;year&amp;quot;, &amp;quot;sex&amp;quot;)) %&amp;gt;%
  right_join(numedulevel, by = c(&amp;quot;level of education&amp;quot; = &amp;quot;level.of.education&amp;quot;)) %&amp;gt;%
  filter(!is.na(eduyears)) %&amp;gt;%  
  mutate(edulevel = `level of education`) %&amp;gt;%
  group_by(edulevel, region, year, sex, `occuptional  (SSYK 2012)`) %&amp;gt;%
  mutate(groupsize_all_ages = sum(groupsize)) %&amp;gt;%  
  group_by(edulevel, region, year, `occuptional  (SSYK 2012)`) %&amp;gt;% 
  mutate (perc_women = perc_women (groupsize_all_ages[1:2])) %&amp;gt;% 
  mutate (nremployees = sum(groupsize.x)) %&amp;gt;%
  mutate (salary = (groupsize.y[2] * groupsize.x[2] + groupsize.y[1] * groupsize.x[1])/(groupsize.x[2] + groupsize.x[1])) %&amp;gt;%
  group_by (sex, year, region, `occuptional  (SSYK 2012)`) %&amp;gt;%
  mutate(regioneduyears_sex = sum(groupsize * eduyears) / sum(groupsize)) %&amp;gt;%
  mutate(regiongroupsize = sum(groupsize)) %&amp;gt;% 
  mutate(nremployees_sex = groupsize.x) %&amp;gt;%
  group_by(region, year, `occuptional  (SSYK 2012)`) %&amp;gt;%
  mutate (sum_pop = sum(groupsize)) %&amp;gt;%
  mutate (regioneduyears = sum(groupsize * eduyears) / sum(groupsize)) %&amp;gt;%
  mutate (perc_women_region = perc_women (regiongroupsize[1:2])) %&amp;gt;% 
  mutate (eduquotient = regioneduyears_sex[2] / regioneduyears_sex[1]) %&amp;gt;% 
  mutate (salary_sex = groupsize.y) %&amp;gt;%
  mutate (salaryquotient = salary_sex[2] / salary_sex[1]) %&amp;gt;%   
  mutate (perc_women_ssyk_region = perc_women(nremployees_sex[1:2])) %&amp;gt;%  
  left_join(nuts %&amp;gt;% distinct (NUTS2_en, NUTS2_sh), by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) %&amp;gt;%
  drop_na()

summary(tb)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##     region              age            level of education     sex           
##  Length:316974      Length:316974      Length:316974      Length:316974     
##  Class :character   Class :character   Class :character   Class :character  
##  Mode  :character   Mode  :character   Mode  :character   Mode  :character  
##                                                                             
##                                                                             
##                                                                             
##      year             groupsize         year_n        sector         
##  Length:316974      Min.   :    0   Min.   :2014   Length:316974     
##  Class :character   1st Qu.: 2561   1st Qu.:2015   Class :character  
##  Mode  :character   Median : 7456   Median :2017   Mode  :character  
##                     Mean   :11676   Mean   :2017                     
##                     3rd Qu.:16443   3rd Qu.:2019                     
##                     Max.   :81358   Max.   :2020                     
##  occuptional  (SSYK 2012)  groupsize.x       year_n.x     groupsize.y    
##  Length:316974            Min.   :  100   Min.   :2014   Min.   : 20200  
##  Class :character         1st Qu.:  400   1st Qu.:2015   1st Qu.: 29100  
##  Mode  :character         Median : 1100   Median :2017   Median : 34300  
##                           Mean   : 2893   Mean   :2017   Mean   : 37470  
##                           3rd Qu.: 3000   3rd Qu.:2019   3rd Qu.: 42600  
##                           Max.   :53700   Max.   :2020   Max.   :139500  
##     year_n.y       eduyears       edulevel         groupsize_all_ages
##  Min.   :2014   Min.   : 8.00   Length:316974      Min.   :   405    
##  1st Qu.:2015   1st Qu.: 9.00   Class :character   1st Qu.: 24027    
##  Median :2017   Median :12.00   Mode  :character   Median : 56038    
##  Mean   :2017   Mean   :12.71                      Mean   : 70055    
##  3rd Qu.:2019   3rd Qu.:15.00                      3rd Qu.:111943    
##  Max.   :2020   Max.   :22.00                      Max.   :288426    
##    perc_women      nremployees         salary       regioneduyears_sex
##  Min.   :0.3575   Min.   :   600   Min.   : 20200   Min.   :11.18     
##  1st Qu.:0.4439   1st Qu.:  4800   1st Qu.: 29214   1st Qu.:11.65     
##  Median :0.4816   Median : 13080   Median : 34488   Median :11.83     
##  Mean   :0.4831   Mean   : 32797   Mean   : 37494   Mean   :11.86     
##  3rd Qu.:0.5000   3rd Qu.: 37800   3rd Qu.: 42738   3rd Qu.:12.13     
##  Max.   :0.6484   Max.   :426600   Max.   :123796   Max.   :12.64     
##  regiongroupsize  nremployees_sex    sum_pop        regioneduyears 
##  Min.   :127118   Min.   :  100   Min.   : 127118   Min.   :11.18  
##  1st Qu.:291940   1st Qu.:  400   1st Qu.: 518853   1st Qu.:11.63  
##  Median :528643   Median : 1100   Median : 722010   Median :11.85  
##  Mean   :490383   Mean   : 2893   Mean   : 878571   Mean   :11.86  
##  3rd Qu.:708813   3rd Qu.: 3000   3rd Qu.:1395157   3rd Qu.:12.01  
##  Max.   :842459   Max.   :53700   Max.   :1682100   Max.   :12.64  
##  perc_women_region  eduquotient      salary_sex     salaryquotient  
##  Min.   :0.4831    Min.   :1.000   Min.   : 20200   Min.   :0.6423  
##  1st Qu.:0.4893    1st Qu.:1.020   1st Qu.: 29100   1st Qu.:0.9333  
##  Median :0.4949    Median :1.030   Median : 34300   Median :0.9804  
##  Mean   :0.4945    Mean   :1.026   Mean   : 37470   Mean   :0.9637  
##  3rd Qu.:0.5000    3rd Qu.:1.039   3rd Qu.: 42600   3rd Qu.:1.0000  
##  Max.   :0.5014    Max.   :1.049   Max.   :139500   Max.   :1.3090  
##  perc_women_ssyk_region   NUTS2_sh        
##  Min.   :0.009346       Length:316974     
##  1st Qu.:0.384615       Class :character  
##  Median :0.500000       Mode  :character  
##  Mean   :0.518956                         
##  3rd Qu.:0.674419                         
##  Max.   :0.945274&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbtemp &amp;lt;- ungroup(tb) %&amp;gt;% dplyr::select(salary, nremployees, year_n, sum_pop, regioneduyears, perc_women_region, salaryquotient, eduquotient, perc_women_ssyk_region, `occuptional  (SSYK 2012)`)

tb_unique &amp;lt;- unique(tbtemp)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Data is normalised before analysis. In this way, the scale of the variables will not affect the analysis. Data is imputed by replacing NA with the median.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  tb_unique_norm &amp;lt;- tb_unique
  tb_unique_norm &amp;lt;- data.frame(data.matrix(tonormest(tb_unique)))
  tb_unique_norm &amp;lt;- imputeMissings::impute(tb_unique_norm, object = NULL, method = &amp;quot;median/mode&amp;quot;, flag = FALSE)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I will use the package bnlearn to approximate a DAG from the data. In bnlearn, there are several algorithms for this purpose. A way to use prior knowledge together with the algorithms for structured learning in the bnlearn package is to specify a blacklist or a whitelist. Arcs in the whitelist are always included in the network. Arcs in the blacklist are never included in the network. If we don’t know a priori what arcs to include in the blacklist or whitelist then we can evaluate several models with different settings. To limit the number of models to evaluate I will do some assumptions. I will assume that the variation in the model can be expressed by using fewer variables, e.g. Principal Component Analysis, for this application I will use factor analysis. I will assume that the number of exogenous variables in the model is equal to or less than the number of factors suggested by factor analysis. I will use the &lt;code&gt;Psych&lt;/code&gt; package’s &lt;code&gt;fa.parallel&lt;/code&gt; function to determine the number of factors. The warning from the factor analysis is ignored. A better choice of rotation and factoring method could solve this, future improvements. The factors with loading greater than 0.3 are chosen for future processing.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;   fatest &amp;lt;- fa.parallel(tb_unique_norm, fm = &amp;quot;minres&amp;quot;, fa = &amp;quot;fa&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in fa.stats(r = r, f = f, phi = phi, n.obs = n.obs, np.obs = np.obs, :
## The estimated weights for the factor scores are probably incorrect. Try a
## different factor score estimation method.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in fac(r = r, nfactors = nfactors, n.obs = n.obs, rotate = rotate, : An
## ultra-Heywood case was detected. Examine the results carefully&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span style=&#34;display:block;&#34; id=&#34;fig:unnamed-chunk-4&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-10-24-suggestion-for-limiting-the-boundaries-for-causal-effects_files/figure-html/unnamed-chunk-4-1.png&#34; alt=&#34;Parallell Analysis Scree Plots&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: Parallell Analysis Scree Plots
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## Parallel analysis suggests that the number of factors =  5  and the number of components =  NA&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  factoranalysis &amp;lt;- fa(tb_unique_norm, nfactors = fatest$nfact, rotate = &amp;quot;oblimin&amp;quot;, fm = &amp;quot;minres&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required namespace: GPArotation&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in fa.stats(r = r, f = f, phi = phi, n.obs = n.obs, np.obs = np.obs, :
## The estimated weights for the factor scores are probably incorrect. Try a
## different factor score estimation method.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in fac(r = r, nfactors = nfactors, n.obs = n.obs, rotate = rotate, : An
## ultra-Heywood case was detected. Examine the results carefully&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  print(factoranalysis$loadings, cutoff = 0.3)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Loadings:
##                          MR1    MR2    MR3    MR4    MR5   
## salary                                 -0.979              
## nremployees                      0.466                     
## year_n                                         0.998       
## sum_pop                          0.996                     
## regioneduyears                   0.570                     
## perc_women_region         0.906                            
## salaryquotient                                             
## eduquotient              -0.969                            
## perc_women_ssyk_region                                0.998
## occuptional...SSYK.2012.                0.779              
## 
##                  MR1   MR2   MR3   MR4   MR5
## SS loadings    1.949 1.702 1.676 1.077 1.059
## Proportion Var 0.195 0.170 0.168 0.108 0.106
## Cumulative Var 0.195 0.365 0.533 0.640 0.746&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  factorloadings &amp;lt;- print(factoranalysis$loadings, cutoff = 0.3)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Loadings:
##                          MR1    MR2    MR3    MR4    MR5   
## salary                                 -0.979              
## nremployees                      0.466                     
## year_n                                         0.998       
## sum_pop                          0.996                     
## regioneduyears                   0.570                     
## perc_women_region         0.906                            
## salaryquotient                                             
## eduquotient              -0.969                            
## perc_women_ssyk_region                                0.998
## occuptional...SSYK.2012.                0.779              
## 
##                  MR1   MR2   MR3   MR4   MR5
## SS loadings    1.949 1.702 1.676 1.077 1.059
## Proportion Var 0.195 0.170 0.168 0.108 0.106
## Cumulative Var 0.195 0.365 0.533 0.640 0.746&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  mygrid &amp;lt;- expand.grid(map(data.frame(factorloadings[,1:5]), filtergt0_3)) 
  
  mygrid %&amp;gt;% 
    knitr::kable(
      booktabs = TRUE,
      caption = &amp;#39;Table of proposed exogenous variables to evaluate&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-5&#34;&gt;Table 2: &lt;/span&gt;Table of proposed exogenous variables to evaluate&lt;/caption&gt;
&lt;colgroup&gt;
&lt;col width=&#34;20%&#34; /&gt;
&lt;col width=&#34;17%&#34; /&gt;
&lt;col width=&#34;28%&#34; /&gt;
&lt;col width=&#34;7%&#34; /&gt;
&lt;col width=&#34;26%&#34; /&gt;
&lt;/colgroup&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;MR1&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;MR2&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;MR3&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;MR4&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;MR5&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;I will start by creating all possible sets and subsets from the set of five exogenous variables that were selected by the factor analysis. For each set, I will create a model from a set of structured learning algorithms from the bnlearn package. Each algorithm is evaluated against how well it minimizes the deviations from the testable implications in the model and the dataset. The function localTests from the dagitty package is used to get a numeric value of the testable implications. The mean deviation from all testable implications by localTests is used. This could favour more complex models since there are fewer testable implications in complex than in simple models. The version of localTests in my test uses a combination of categorical and continuous data. A more advanced algorithm could have been used to select the model that minimizes the deviation. The models so far are created in dagitty syntax.&lt;/p&gt;
&lt;p&gt;From the dagitty syntax, I will create a Structural Equation Model in lavaan for each model created in the earlier step. Each SEM model is evaluated for a variety of fit measures to assess the global fit of the latent variable model. No latent variables are evaluated at this stage but you could perhaps imagine that there is a correspondence between the factor analysis and some unmeasured latent variables. The model parameters for each model is also stored for later analysis.&lt;/p&gt;
&lt;p&gt;The table of models and the table of evaluated models are joined to allow extra comparisons.&lt;/p&gt;
&lt;p&gt;Since the generation of dagitty models takes a while I have prepared that table in a file.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  list_of_exogenous_variables &amp;lt;- allcombn(mygrid)
  #table_of_dagitty_models &amp;lt;- combtodag(list_of_exogenous_variables, tb_unique_norm)
  table_of_dagitty_models &amp;lt;- read.csv(&amp;quot;table_of_dagitty_models.csv&amp;quot;)
  table_of_dagitty_models &amp;lt;- table_of_dagitty_models[,2:22] 
  table_of_sem_models &amp;lt;- dagitty2sem(table_of_dagitty_models, tb_unique_norm)
  
  table_of_dagitty_models_df &amp;lt;- data.frame(table_of_dagitty_models)

  colnames(table_of_dagitty_models_df) &amp;lt;- 
    c(&amp;quot;model&amp;quot;, 
      names(bnmodels), 
      c(&amp;quot;1&amp;quot; , &amp;quot;2&amp;quot;, &amp;quot;3&amp;quot;, &amp;quot;4&amp;quot;, &amp;quot;5&amp;quot;, 
        &amp;quot;algorithm&amp;quot;))
  
  dagitty_and_sem_table &amp;lt;- table_of_dagitty_models_df %&amp;gt;% 
    left_join(table_of_sem_models, by = c(&amp;quot;1&amp;quot; , &amp;quot;2&amp;quot;, &amp;quot;3&amp;quot;, &amp;quot;4&amp;quot;, &amp;quot;5&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  ggplot(dagitty_and_sem_table) + 
    geom_point(aes(x = pvalue.x, y = rmsea))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span style=&#34;display:block;&#34; id=&#34;fig:unnamed-chunk-7&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-10-24-suggestion-for-limiting-the-boundaries-for-causal-effects_files/figure-html/unnamed-chunk-7-1.png&#34; alt=&#34;The figure shows that there is a tradeoff between the pvalue and the Root Mean Square Error of the model&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: The figure shows that there is a tradeoff between the pvalue and the Root Mean Square Error of the model
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  dagitty_and_sem_table %&amp;gt;% 
    mutate(deviance = as.numeric(pmin(h2pc, hpc, fast.iamb, inter.iamb, si.hiton.pc, iamb.fdr, iamb, gs, mmpc, pc,  hc, tabu, mmhc, rsmax2))) %&amp;gt;% 
    ggplot() + 
    geom_point(aes(x = aic, y = deviance))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span style=&#34;display:block;&#34; id=&#34;fig:unnamed-chunk-8&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-10-24-suggestion-for-limiting-the-boundaries-for-causal-effects_files/figure-html/unnamed-chunk-8-1.png&#34; alt=&#34;The figure shows how the deviance measured by localTests and the model complexity measured in aic are related&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: The figure shows how the deviance measured by localTests and the model complexity measured in aic are related
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;From the table, we can examine how many of the models contained an arc, i.e. a relation from one variable to another. We find that the direction of the relation from quotient between the average number of education years for men and women to quotient between salary for men and women is found in 121 out of 143 tested models. The estimation of the relationship is 0.32 standard units. Only the models with a pvalue less than 0.05 are counted.&lt;/p&gt;
&lt;p&gt;If we use the ten (arbitrary number, could be optimized) arcs that occur are most frequent in the models that I have analysed and use those arcs to create a whitelist, i.e. arcs that must be present in the model, when estimating a new model with the hills climbing algorithm we get a model that can be used to approximate the causal effects that can be estimated from the data. The plot shows the model. In this model year and percentage of women in the ssyk are exogenous variables and the rest of the variables are endogenous.
When looking at the model’s parameter values and sorting it by the highest effect we find that the effect of per cent women in the region on quotient between the average number of education years for men and women is the highest of all effects between continuous variables, 79 out of 143 models has this direction of this relation.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  temp &amp;lt;- combn(colnames(tb_unique_norm), 2)
  list_of_var_combinations &amp;lt;- cbind(temp, rbind(temp[2,], temp[1,]))

  summary_table &amp;lt;- vector()
  for(i in data.frame(list_of_var_combinations)){
    est &amp;lt;- dagitty_and_sem_table %&amp;gt;% 
      filter(lhs == i[1], rhs == i[2], pvalue.x &amp;lt; 0.05) %&amp;gt;% 
      dplyr::select(est)
    summary_table &amp;lt;- rbind(
      summary_table, 
      c(i, 
        (t(summary(est))), 
        nrow(est), 
        sd(t(est))))
  }

  summary_table &amp;lt;- unique(cbind(summary_table[,1:8], data.frame(map(data.frame(summary_table[,9:10]), as.numeric)))) %&amp;gt;%
    arrange(-X1)
  
  summary_table[1:10,] %&amp;gt;%
    select(`1`, `2`, X1) %&amp;gt;%
    rename(lhs = `1`) %&amp;gt;%
    rename(rhs = `2`) %&amp;gt;%
    rename(nr_of_models = X1) %&amp;gt;%
    knitr::kable(
      booktabs = TRUE,
      caption = &amp;#39;The ten most common arcs of all 143 models&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-9&#34;&gt;Table 3: &lt;/span&gt;The ten most common arcs of all 143 models&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;lhs&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;rhs&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;nr_of_models&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;121&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;111&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;110&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;110&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;104&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;104&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;98&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;98&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;97&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;95&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  whitelist &amp;lt;- summary_table[1:10, 2:1]
  
  hctree &amp;lt;- hc(tb_unique_norm, whitelist = whitelist)
  
  neltree &amp;lt;- as.graphNEL(hctree)
  bg &amp;lt;- addBgKnowledge(neltree)
  if (length(bg) == 0){
    return (Inf)
  }
  
  g &amp;lt;- dagitty(pcalg2dagitty(t(as(bg, &amp;quot;matrix&amp;quot;)), colnames(tb_unique_norm), type = &amp;quot;dag&amp;quot;))
  
  fit &amp;lt;- sem(paste(dagityy2lavaan(g, NULL), collapse = &amp;#39;&amp;#39;), data = tb_unique_norm)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in lav_data_full(data = data, group = group, cluster = cluster, : lavaan
## WARNING: some observed variances are (at least) a factor 1000 times larger than
## others; use varTable(fit) to investigate&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  semPaths(fit, &amp;#39;std&amp;#39;, &amp;#39;est&amp;#39;, curveAdjacent = TRUE, style = &amp;quot;lisrel&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-10-24-suggestion-for-limiting-the-boundaries-for-causal-effects_files/figure-html/unnamed-chunk-9-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  r &amp;lt;- localTests(
    g,
    tb_unique_norm, &amp;quot;cis&amp;quot;,
    sample.cov = lavCor(tb_unique_norm),
    sample.nobs = nrow( tb_unique_norm ),
    max.conditioning.variables = 2,
    R = 100)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in lav_data_full(data = data, group = group, cluster = cluster, : lavaan
## WARNING: some observed variances are (at least) a factor 1000 times larger than
## others; use varTable(fit) to investigate&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  parameterEstimates(fit) %&amp;gt;% 
    select(lhs, op, rhs, est, pvalue) %&amp;gt;%
    arrange(-abs(est)) %&amp;gt;%
    knitr::kable(
      booktabs = TRUE,
      caption = &amp;#39;Parameters for the approximate model sorted in falling effect size&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-9&#34;&gt;Table 3: &lt;/span&gt;Parameters for the approximate model sorted in falling effect size&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;lhs&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;op&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;rhs&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;est&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;pvalue&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;515.4245404&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-28.6174604&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-7.9191011&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.1547157&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9988570&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7031739&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000006&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9997846&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9997846&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9770425&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9603644&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9556355&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.9015448&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8082339&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7302152&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7295975&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.6494568&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4814185&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4493408&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3776151&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3740575&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3242296&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3050356&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2773857&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2212280&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.1546639&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.1535919&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1529078&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1508210&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1479586&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1465144&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1421677&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1329411&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0002882&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1082249&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0952185&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0951437&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000015&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0790279&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000001&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0767289&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000001&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0693828&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000003&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0474522&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0014239&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0283044&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0201865&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0204311&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0040980&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7020812&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0037042&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0032636&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0029127&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;nremployees&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0017782&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8380207&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_ssyk_region&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;~~&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0005915&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  plotLocalTestResults( r )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span style=&#34;display:block;&#34; id=&#34;fig:unnamed-chunk-10&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-10-24-suggestion-for-limiting-the-boundaries-for-causal-effects_files/figure-html/unnamed-chunk-10-1.png&#34; alt=&#34;This figure shows the testable implications from localTests&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: This figure shows the testable implications from localTests
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  ggplot(data = tb_unique_norm, mapping = aes(x = eduquotient, y = salaryquotient)) + 
    geom_boxplot(mapping = aes(group = cut_width(eduquotient, 0.4)))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span style=&#34;display:block;&#34; id=&#34;fig:unnamed-chunk-11&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-10-24-suggestion-for-limiting-the-boundaries-for-causal-effects_files/figure-html/unnamed-chunk-11-1.png&#34; alt=&#34;The figure shows how the quotient between salary for men and women is affected by the quotient between the average number of education years for men and women&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: The figure shows how the quotient between salary for men and women is affected by the quotient between the average number of education years for men and women
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  ggplot(tb_unique_norm) + 
    geom_point(aes(x = perc_women_region, y = eduquotient))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span style=&#34;display:block;&#34; id=&#34;fig:unnamed-chunk-12&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-10-24-suggestion-for-limiting-the-boundaries-for-causal-effects_files/figure-html/unnamed-chunk-12-1.png&#34; alt=&#34;The figure shows how the quotient between the average number of education years for men and women is affected by the per cent women in the region&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: The figure shows how the quotient between the average number of education years for men and women is affected by the per cent women in the region
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;If you know the DAG it is possible to identify the sets of covariates that allow unbiased estimation of causal effects with the function adjustmentSets in the dagitty package. I will calculate the possible adjustment sets for all models created in earlier steps and compare them. Let’s start by calculating the causal effect of the quotient between the average number of education years for men and women on the quotient between salary for men and women.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  causaleffect &amp;lt;- calceffect(table_of_dagitty_models, &amp;quot;eduquotient&amp;quot;, &amp;quot;salaryquotient&amp;quot;, tb_unique_norm)
  
  causaleffect_df &amp;lt;- data.frame(map(causaleffect, unlist))
  
  colnames(causaleffect_df) &amp;lt;- colnames(causaleffect)

  dagitty_sem_and_causal_table &amp;lt;- dagitty_and_sem_table %&amp;gt;% 
    left_join(causaleffect_df, by = c(&amp;quot;1&amp;quot; , &amp;quot;2&amp;quot;, &amp;quot;3&amp;quot;, &amp;quot;4&amp;quot;, &amp;quot;5&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  dagitty_sem_and_causal_table %&amp;gt;% 
    filter(lhs == &amp;quot;salaryquotient&amp;quot;, rhs == &amp;quot;eduquotient&amp;quot;) %&amp;gt;% 
    ggplot() + 
      geom_point(aes(x = estimate, y = pvalue.x, color = aic))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span style=&#34;display:block;&#34; id=&#34;fig:unnamed-chunk-14&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-10-24-suggestion-for-limiting-the-boundaries-for-causal-effects_files/figure-html/unnamed-chunk-14-1.png&#34; alt=&#34;The figure shows the estimate for the causal effect of the quotient between the average number of education years for men and women on quotient between salary for men and women from all tested models and the pvalue and aic of the model&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: The figure shows the estimate for the causal effect of the quotient between the average number of education years for men and women on quotient between salary for men and women from all tested models and the pvalue and aic of the model
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  dagitty_sem_and_causal_table %&amp;gt;% 
    mutate(modelnumber = as.integer(factor(`t(data.frame(eq))`))) %&amp;gt;%
    filter(lhs == &amp;quot;salaryquotient&amp;quot;, rhs == &amp;quot;eduquotient&amp;quot;) %&amp;gt;% 
    ggplot() + 
      geom_point(aes(x = modelnumber, y = estimate, color = pvalue.x))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span style=&#34;display:block;&#34; id=&#34;fig:unnamed-chunk-15&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-10-24-suggestion-for-limiting-the-boundaries-for-causal-effects_files/figure-html/unnamed-chunk-15-1.png&#34; alt=&#34;The figure shows how the quotient between the average number of education years for men and women is affected by the per cent women in the region for the different covariates&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: The figure shows how the quotient between the average number of education years for men and women is affected by the per cent women in the region for the different covariates
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  dagitty_sem_and_causal_table %&amp;gt;% 
    filter(lhs == &amp;quot;salaryquotient&amp;quot;, rhs == &amp;quot;eduquotient&amp;quot;) %&amp;gt;% 
    mutate(modelnumber = as.integer(factor(`t(data.frame(eq))`))) %&amp;gt;%
    mutate(linear_equation_with_covariates = `t(data.frame(eq))`) %&amp;gt;%
    group_by(modelnumber) %&amp;gt;%
    mutate(frequency = n()) %&amp;gt;%  
    arrange(modelnumber) %&amp;gt;%
    select(linear_equation_with_covariates, modelnumber, estimate, frequency) %&amp;gt;%
    unique() %&amp;gt;%
    knitr::kable(
      booktabs = TRUE,
      caption = &amp;#39;Table showing the covariates needed for different models to calculate the effect&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-16&#34;&gt;Table 4: &lt;/span&gt;Table showing the covariates needed for different models to calculate the effect&lt;/caption&gt;
&lt;colgroup&gt;
&lt;col width=&#34;76%&#34; /&gt;
&lt;col width=&#34;8%&#34; /&gt;
&lt;col width=&#34;7%&#34; /&gt;
&lt;col width=&#34;7%&#34; /&gt;
&lt;/colgroup&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;linear_equation_with_covariates&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;modelnumber&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;estimate&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;frequency&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3475676&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;13&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + nremployees&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3438332&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + nremployees + occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3242904&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + nremployees + occuptional…SSYK.2012. + perc_women_region + sum_pop + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.4027556&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;31&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + nremployees + occuptional…SSYK.2012. + salary + sum_pop + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3230239&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + nremployees + perc_women_region + salary + sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3621844&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + nremployees + perc_women_region + sum_pop + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.4259852&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + nremployees + perc_women_ssyk_region + salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3335892&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + occuptional…SSYK.2012.&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3355981&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + occuptional…SSYK.2012. + perc_women_region + regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.5848968&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + occuptional…SSYK.2012. + perc_women_ssyk_region + salary + sum_pop + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3242342&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;31&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + occuptional…SSYK.2012. + perc_women_ssyk_region + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3548155&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + occuptional…SSYK.2012. + regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;13&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3497428&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + occuptional…SSYK.2012. + regioneduyears + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;14&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3676810&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + occuptional…SSYK.2012. + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3443816&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + perc_women_region + perc_women_ssyk_region + sum_pop + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;16&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.4063135&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + perc_women_region + regioneduyears + sum_pop + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;17&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.4235753&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;17&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + perc_women_region + salary + sum_pop + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;18&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3932932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + perc_women_region + sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;19&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3868834&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + perc_women_region + sum_pop + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.4106547&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + perc_women_ssyk_region + salary + sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;21&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2998376&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + perc_women_ssyk_region + salary + sum_pop + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;22&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3135959&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;23&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + perc_women_ssyk_region + sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;23&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2934366&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + perc_women_ssyk_region + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;24&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3671626&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;25&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3622676&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + salary + sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;26&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2923565&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + salary + sum_pop + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;27&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3064032&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;28&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2821068&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient ~ eduquotient + year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;29&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3567006&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  ggplot(tb_unique_norm) + 
    geom_point(aes(x = eduquotient, y = salaryquotient, color = perc_women_region))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span style=&#34;display:block;&#34; id=&#34;fig:unnamed-chunk-17&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-10-24-suggestion-for-limiting-the-boundaries-for-causal-effects_files/figure-html/unnamed-chunk-17-1.png&#34; alt=&#34;The figure shows how quotient between salary for men and women is affected by quotient between the average number of education years for men and women and the covariate per cent women in the region&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: The figure shows how quotient between salary for men and women is affected by quotient between the average number of education years for men and women and the covariate per cent women in the region
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;As a second example, I will calculate the causal effect of per cent women in the region on quotient between the average number of education years for men and women.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  causaleffect &amp;lt;- calceffect(table_of_dagitty_models, &amp;quot;perc_women_region&amp;quot;, &amp;quot;eduquotient&amp;quot;, tb_unique_norm)
  
  causaleffect_df &amp;lt;- data.frame(map(causaleffect, unlist))
  
  colnames(causaleffect_df) &amp;lt;- colnames(causaleffect)
  
  dagitty_sem_and_causal_table &amp;lt;- dagitty_and_sem_table %&amp;gt;% 
    left_join(causaleffect_df, by = c(&amp;quot;1&amp;quot; , &amp;quot;2&amp;quot;, &amp;quot;3&amp;quot;, &amp;quot;4&amp;quot;, &amp;quot;5&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  dagitty_sem_and_causal_table %&amp;gt;% 
    filter(lhs == &amp;quot;eduquotient&amp;quot;, rhs == &amp;quot;perc_women_region&amp;quot;) %&amp;gt;% 
    ggplot() + 
      geom_point(aes(x = estimate, y = pvalue.x, color = aic))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span style=&#34;display:block;&#34; id=&#34;fig:unnamed-chunk-19&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-10-24-suggestion-for-limiting-the-boundaries-for-causal-effects_files/figure-html/unnamed-chunk-19-1.png&#34; alt=&#34;The figure shows the estimate for the causal effect of per cent women in the region on quotient between the average number of education years for men and women&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 10: The figure shows the estimate for the causal effect of per cent women in the region on quotient between the average number of education years for men and women
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  dagitty_sem_and_causal_table %&amp;gt;% 
    mutate(modelnumber = as.integer(factor(`t(data.frame(eq))`))) %&amp;gt;%
    filter(lhs == &amp;quot;eduquotient&amp;quot;, rhs == &amp;quot;perc_women_region&amp;quot;) %&amp;gt;% 
    ggplot() + 
      geom_point(aes(x = modelnumber, y = estimate, color = aic))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span style=&#34;display:block;&#34; id=&#34;fig:unnamed-chunk-20&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-10-24-suggestion-for-limiting-the-boundaries-for-causal-effects_files/figure-html/unnamed-chunk-20-1.png&#34; alt=&#34;The figure shows how the quotient between the average number of education years for men and women is affected by the per cent women in the region for the different covariates&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 11: The figure shows how the quotient between the average number of education years for men and women is affected by the per cent women in the region for the different covariates
&lt;/p&gt;
&lt;/div&gt;
</description>
    </item>
    
    <item>
      <title>Salaries and time series regression</title>
      <link>http://mikaellundqvist.rbind.io/2021/06/02/salaries-and-time-series-regression/</link>
      <pubDate>Wed, 02 Jun 2021 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2021/06/02/salaries-and-time-series-regression/</guid>
      <description>
&lt;script src=&#34;http://mikaellundqvist.rbind.io/rmarkdown-libs/htmlwidgets/htmlwidgets.js&#34;&gt;&lt;/script&gt;
&lt;script src=&#34;http://mikaellundqvist.rbind.io/rmarkdown-libs/plotly-binding/plotly.js&#34;&gt;&lt;/script&gt;
&lt;script src=&#34;http://mikaellundqvist.rbind.io/rmarkdown-libs/typedarray/typedarray.min.js&#34;&gt;&lt;/script&gt;
&lt;script src=&#34;http://mikaellundqvist.rbind.io/rmarkdown-libs/jquery/jquery.min.js&#34;&gt;&lt;/script&gt;
&lt;link href=&#34;http://mikaellundqvist.rbind.io/rmarkdown-libs/crosstalk/css/crosstalk.css&#34; rel=&#34;stylesheet&#34; /&gt;
&lt;script src=&#34;http://mikaellundqvist.rbind.io/rmarkdown-libs/crosstalk/js/crosstalk.min.js&#34;&gt;&lt;/script&gt;
&lt;link href=&#34;http://mikaellundqvist.rbind.io/rmarkdown-libs/plotly-htmlwidgets-css/plotly-htmlwidgets.css&#34; rel=&#34;stylesheet&#34; /&gt;
&lt;script src=&#34;http://mikaellundqvist.rbind.io/rmarkdown-libs/plotly-main/plotly-latest.min.js&#34;&gt;&lt;/script&gt;


&lt;p&gt;In this post, I will examine Dynamic Linear Models and Time-Series Regression. I will return to data for Engineers from Statistics Sweden. Since the salaries for each year, each stratum (age group) is strongly correlated with the salary for the previous year it does not seem too distant to use a time series to represent the change of salaries throughout the period.&lt;/p&gt;
&lt;p&gt;I will let the age represent the season in the time series. This violates the properties of a regular time series and has to be considered for the rest of the analysis. First, let´s decompose the series into its trend and seasonal patterns.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.3     v purrr   0.3.4
## v tibble  3.1.0     v dplyr   1.0.5
## v tidyr   1.1.3     v stringr 1.4.0
## v readr   1.4.0     v forcats 0.5.1
## Warning: package &amp;#39;ggplot2&amp;#39; was built under R version 4.0.3
## Warning: package &amp;#39;tibble&amp;#39; was built under R version 4.0.5
## Warning: package &amp;#39;tidyr&amp;#39; was built under R version 4.0.5
## Warning: package &amp;#39;readr&amp;#39; was built under R version 4.0.3
## Warning: package &amp;#39;dplyr&amp;#39; was built under R version 4.0.5
## Warning: package &amp;#39;forcats&amp;#39; was built under R version 4.0.3
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
library(imputeTS)
## Warning: package &amp;#39;imputeTS&amp;#39; was built under R version 4.0.5
## Registered S3 method overwritten by &amp;#39;quantmod&amp;#39;:
##   method            from
##   as.zoo.data.frame zoo
library(TSstudio)
## Warning: package &amp;#39;TSstudio&amp;#39; was built under R version 4.0.5
library(forecast)
## Warning: package &amp;#39;forecast&amp;#39; was built under R version 4.0.5
library(dynlm)
## Warning: package &amp;#39;dynlm&amp;#39; was built under R version 4.0.5
## Loading required package: zoo
## Warning: package &amp;#39;zoo&amp;#39; was built under R version 4.0.5
## 
## Attaching package: &amp;#39;zoo&amp;#39;
## The following object is masked from &amp;#39;package:imputeTS&amp;#39;:
## 
##     na.locf
## The following objects are masked from &amp;#39;package:base&amp;#39;:
## 
##     as.Date, as.Date.numeric
library(lmtest) 
## Warning: package &amp;#39;lmtest&amp;#39; was built under R version 4.0.4
library(sandwich)
## Warning: package &amp;#39;sandwich&amp;#39; was built under R version 4.0.3
library(ggeffects)
## Warning: package &amp;#39;ggeffects&amp;#39; was built under R version 4.0.5

readfile &amp;lt;- function (file1){
  read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%
    gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = salary) %&amp;gt;%
    mutate (year_n = parse_number (year))
}

# Thanks to Grant, Stack Overflow
predNeweyWest &amp;lt;- function (model){
  pred_df &amp;lt;- data.frame(fit = predict(model))

  X_mat &amp;lt;- model.matrix(model)

  v_hac &amp;lt;- NeweyWest(model, prewhite = FALSE, adjust = TRUE)

  var_fit_hac &amp;lt;- rowSums((X_mat %*% v_hac) * X_mat)
  se_fit_hac &amp;lt;- sqrt(var_fit_hac)

  pred_df &amp;lt;-
    pred_df %&amp;gt;%
    mutate(se_fit_hac = se_fit_hac) %&amp;gt;%
    mutate(
      lwr_hac = fit - qt(0.975, df = model$df.residual) * se_fit_hac,
      upr_hac = fit + qt(0.975, df = model$df.residual) * se_fit_hac
    )
}

plotmodel &amp;lt;- function(data, pred_df, no_n = FALSE){ 
  if(no_n){
  bind_cols(
    data,
    pred_df
    ) %&amp;gt;%
      ggplot(aes(x = year_dec, y = salary, ymin = lwr_hac, ymax = upr_hac)) + 
      geom_point() + 
      geom_ribbon(fill = &amp;quot;#E41A1C&amp;quot;, alpha = 0.3, col = NA) +
      labs(
        x = &amp;quot;Year&amp;quot;,
        y = &amp;quot;Salary (SEK/month)&amp;quot;,
        caption = &amp;#39;Shaded region indicates HAC 95% CI.&amp;#39;
    )
  }
  else{
  bind_cols(
    data,
    pred_df
    ) %&amp;gt;%
      ggplot(aes(x = year_dec, y = salary, color = n, ymin = lwr_hac, ymax = upr_hac)) + 
      geom_point() + 
      geom_ribbon(fill = &amp;quot;#E41A1C&amp;quot;, alpha = 0.3, col = NA) +
      labs(
        x = &amp;quot;Year&amp;quot;,
        y = &amp;quot;Salary (SEK/month)&amp;quot;,
        caption = &amp;#39;Shaded region indicates HAC 95% CI.&amp;#39;
    )    
  }
}

assess_model &amp;lt;- function(model, timeseries, data, no_n = FALSE, doexp = FALSE){
  print(summary (model))

  print(coeftest(model, vcov = NeweyWest, prewhite = F, adjust = T))

  print(checkresiduals(model))
  
  if(doexp){
    pred_df &amp;lt;- exp(predNeweyWest(model))
  } else {
    pred_df &amp;lt;- predNeweyWest(model)
  }

  pred_df$year_dec &amp;lt;- timeseries

  plotmodel(data, pred_df, no_n)
}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data table is downloaded from Statistics Sweden. It is saved as a comma-delimited file without heading, 000000D2_20210506-201343.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The table: Average monthly pay (total pay), non-manual workers all sectors (SLP), SEK by occupational group (SSYK), age, sex and year. SSYK 2012 214, Year 2014 - 2019&lt;/p&gt;
&lt;p&gt;The average age within each age group is used as a numeric value for graphical presentation and the linear model.&lt;/p&gt;
&lt;p&gt;The number of Engineers in each stratum is downloaded separately in the file 000000CZ_20210506-201420.csv.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb &amp;lt;- readfile(&amp;quot;000000D2_20210506-201343.csv&amp;quot;) %&amp;gt;%
  rowwise() %&amp;gt;%
  mutate(age_l = unlist(lapply(strsplit(substr(age, 1, 5), &amp;quot;-&amp;quot;), strtoi))[1]) %&amp;gt;%
  rowwise() %&amp;gt;%
  mutate(age_h = unlist(lapply(strsplit(substr(age, 1, 5), &amp;quot;-&amp;quot;), strtoi))[2]) %&amp;gt;%
  mutate(age_n = (age_l + age_h) / 2)

tbcount &amp;lt;- readfile(&amp;quot;000000CZ_20210506-201420.csv&amp;quot;)
tbcount$salary &amp;lt;- replace(tbcount$salary, is.na(tbcount$salary), 0)

tb$n &amp;lt;- tbcount$salary&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Let’s have a look at the age distribution for the different years for men and women.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb %&amp;gt;%
  ggplot () +  
    geom_point (mapping = aes(x = age_n,y = n, colour = year_n, shape = sex)) + 
  labs(
    x = &amp;quot;Age&amp;quot;,
    y = &amp;quot;Number of Engineers&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-3-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Create a time series for each gender. Time series can not have missing values, Impute missing values in time series with arima model. Women don’t have any data for the age group 65-66 year, that group is filtered away.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_men &amp;lt;- filter(tb, sex == &amp;quot;men&amp;quot;)

tb_women &amp;lt;- filter(tb, sex == &amp;quot;women&amp;quot;) %&amp;gt;% filter(age_n != 65.5)

summary(tb_men$salary)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA&amp;#39;s 
##   27300   36550   47100   43340   49500   52800       1

summary(tb_women$salary)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA&amp;#39;s 
##   26600   35000   44700   41293   45900   52100       1

tbts_men &amp;lt;- ts(tb_men$salary, start = 2014, freq = 6) %&amp;gt;% na_kalman(&amp;quot;auto.arima&amp;quot;)

tbts_women &amp;lt;- ts(tb_women$salary, start = 2014, freq = 5) %&amp;gt;% na_kalman(&amp;quot;auto.arima&amp;quot;)

tb_men$salary &amp;lt;- as.numeric(tbts_men)

tb_women$salary &amp;lt;- as.numeric(tbts_women)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Let’s use the decompose function from the stats package to view the trend, seasonal and random component of the time series.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;decompose(tbts_men) %&amp;gt;% plot()&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-5-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;
decompose(tbts_women) %&amp;gt;% plot()&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-5-2.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Let´s have a look at the autocorrelation for the series. As expected the series for men shows a strong correlation with its sixth lag, i.e. the same age category the year before. The series for women shows a strong correlation with its fifth lag.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;acf(tbts_men, 36)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-6-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;
acf(tbts_women, 30)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-6-2.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;The partial autocorrelation function gives the partial correlation of a stationary time series with its own lagged values, regressed the values of the time series at all shorter lags.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;pacf(tbts_men, 36)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-7-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;
pacf(tbts_women, 36)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-7-2.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;The following plot shows the correlation between the salary and its yearly lag for three years.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;ts_lags(tbts_men, c(6, 12, 18))&lt;/code&gt;&lt;/pre&gt;
&lt;div id=&#34;htmlwidget-1&#34; style=&#34;width:672px;height:480px;&#34; class=&#34;plotly html-widget&#34;&gt;&lt;/div&gt;
&lt;script type=&#34;application/json&#34; data-for=&#34;htmlwidget-1&#34;&gt;{&#34;x&#34;:{&#34;data&#34;:[{&#34;x&#34;:[28600,35600,43500,47400,48000,47400,29400,36200,44400,47100,49000,48124.6579579629,27300,36000,44800,48400,49800,51200,30300,36900,45700,49700,50200,46600,30600,37600,47200,50900,52100,49300],&#34;y&#34;:[29400,36200,44400,47100,49000,48124.6579579629,27300,36000,44800,48400,49800,51200,30300,36900,45700,49700,50200,46600,30600,37600,47200,50900,52100,49300,31300,39300,47400,52100,52800,52800],&#34;mode&#34;:&#34;markers&#34;,&#34;type&#34;:&#34;scatter&#34;,&#34;marker&#34;:{&#34;color&#34;:&#34;rgba(31,119,180,1)&#34;,&#34;line&#34;:{&#34;color&#34;:&#34;rgba(31,119,180,1)&#34;}},&#34;error_y&#34;:{&#34;color&#34;:&#34;rgba(31,119,180,1)&#34;},&#34;error_x&#34;:{&#34;color&#34;:&#34;rgba(31,119,180,1)&#34;},&#34;line&#34;:{&#34;color&#34;:&#34;rgba(31,119,180,1)&#34;},&#34;xaxis&#34;:&#34;x&#34;,&#34;yaxis&#34;:&#34;y&#34;,&#34;frame&#34;:null},{&#34;x&#34;:[28600,35600,43500,47400,48000,47400,29400,36200,44400,47100,49000,48124.6579579629,27300,36000,44800,48400,49800,51200,30300,36900,45700,49700,50200,46600],&#34;y&#34;:[27300,36000,44800,48400,49800,51200,30300,36900,45700,49700,50200,46600,30600,37600,47200,50900,52100,49300,31300,39300,47400,52100,52800,52800],&#34;mode&#34;:&#34;markers&#34;,&#34;type&#34;:&#34;scatter&#34;,&#34;marker&#34;:{&#34;color&#34;:&#34;rgba(255,127,14,1)&#34;,&#34;line&#34;:{&#34;color&#34;:&#34;rgba(255,127,14,1)&#34;}},&#34;error_y&#34;:{&#34;color&#34;:&#34;rgba(255,127,14,1)&#34;},&#34;error_x&#34;:{&#34;color&#34;:&#34;rgba(255,127,14,1)&#34;},&#34;line&#34;:{&#34;color&#34;:&#34;rgba(255,127,14,1)&#34;},&#34;xaxis&#34;:&#34;x2&#34;,&#34;yaxis&#34;:&#34;y&#34;,&#34;frame&#34;:null},{&#34;x&#34;:[28600,35600,43500,47400,48000,47400,29400,36200,44400,47100,49000,48124.6579579629,27300,36000,44800,48400,49800,51200],&#34;y&#34;:[30300,36900,45700,49700,50200,46600,30600,37600,47200,50900,52100,49300,31300,39300,47400,52100,52800,52800],&#34;mode&#34;:&#34;markers&#34;,&#34;type&#34;:&#34;scatter&#34;,&#34;marker&#34;:{&#34;color&#34;:&#34;rgba(44,160,44,1)&#34;,&#34;line&#34;:{&#34;color&#34;:&#34;rgba(44,160,44,1)&#34;}},&#34;error_y&#34;:{&#34;color&#34;:&#34;rgba(44,160,44,1)&#34;},&#34;error_x&#34;:{&#34;color&#34;:&#34;rgba(44,160,44,1)&#34;},&#34;line&#34;:{&#34;color&#34;:&#34;rgba(44,160,44,1)&#34;},&#34;xaxis&#34;:&#34;x3&#34;,&#34;yaxis&#34;:&#34;y&#34;,&#34;frame&#34;:null}],&#34;layout&#34;:{&#34;xaxis&#34;:{&#34;domain&#34;:[0,0.313333333333333],&#34;automargin&#34;:true,&#34;title&#34;:&#34;&#34;,&#34;range&#34;:[27300,52800],&#34;anchor&#34;:&#34;y&#34;},&#34;xaxis2&#34;:{&#34;domain&#34;:[0.353333333333333,0.646666666666667],&#34;automargin&#34;:true,&#34;title&#34;:&#34;&#34;,&#34;range&#34;:[27300,52800],&#34;anchor&#34;:&#34;y&#34;},&#34;xaxis3&#34;:{&#34;domain&#34;:[0.686666666666667,1],&#34;automargin&#34;:true,&#34;title&#34;:&#34;&#34;,&#34;range&#34;:[27300,52800],&#34;anchor&#34;:&#34;y&#34;},&#34;yaxis&#34;:{&#34;domain&#34;:[0,1],&#34;automargin&#34;:true,&#34;range&#34;:[27300,52800],&#34;title&#34;:[],&#34;anchor&#34;:&#34;x&#34;},&#34;annotations&#34;:[{&#34;text&#34;:&#34;Lag 6&#34;,&#34;xref&#34;:&#34;paper&#34;,&#34;yref&#34;:&#34;paper&#34;,&#34;yanchor&#34;:&#34;bottom&#34;,&#34;xanchor&#34;:&#34;center&#34;,&#34;align&#34;:&#34;center&#34;,&#34;x&#34;:0.156666666666667,&#34;y&#34;:0.9,&#34;showarrow&#34;:false},{&#34;text&#34;:&#34;Lag 12&#34;,&#34;xref&#34;:&#34;paper&#34;,&#34;yref&#34;:&#34;paper&#34;,&#34;yanchor&#34;:&#34;bottom&#34;,&#34;xanchor&#34;:&#34;center&#34;,&#34;align&#34;:&#34;center&#34;,&#34;x&#34;:0.5,&#34;y&#34;:0.9,&#34;showarrow&#34;:false},{&#34;text&#34;:&#34;Lag 18&#34;,&#34;xref&#34;:&#34;paper&#34;,&#34;yref&#34;:&#34;paper&#34;,&#34;yanchor&#34;:&#34;bottom&#34;,&#34;xanchor&#34;:&#34;center&#34;,&#34;align&#34;:&#34;center&#34;,&#34;x&#34;:0.843333333333333,&#34;y&#34;:0.9,&#34;showarrow&#34;:false}],&#34;shapes&#34;:[],&#34;images&#34;:[],&#34;margin&#34;:{&#34;b&#34;:40,&#34;l&#34;:60,&#34;t&#34;:25,&#34;r&#34;:10},&#34;hovermode&#34;:&#34;closest&#34;,&#34;showlegend&#34;:false,&#34;title&#34;:&#34;tbts_men - Series (Y axis) vs. Lags (X axis)&#34;},&#34;attrs&#34;:{&#34;5cd46b83ac6&#34;:{&#34;x&#34;:[null,null,null,null,null,null,28600,35600,43500,47400,48000,47400,29400,36200,44400,47100,49000,48124.6579579629,27300,36000,44800,48400,49800,51200,30300,36900,45700,49700,50200,46600,30600,37600,47200,50900,52100,49300],&#34;y&#34;:[28600,35600,43500,47400,48000,47400,29400,36200,44400,47100,49000,48124.6579579629,27300,36000,44800,48400,49800,51200,30300,36900,45700,49700,50200,46600,30600,37600,47200,50900,52100,49300,31300,39300,47400,52100,52800,52800],&#34;mode&#34;:&#34;markers&#34;,&#34;alpha_stroke&#34;:1,&#34;sizes&#34;:[10,100],&#34;spans&#34;:[1,20],&#34;type&#34;:&#34;scatter&#34;},&#34;5cd47170713c&#34;:{&#34;x&#34;:[null,null,null,null,null,null,null,null,null,null,null,null,28600,35600,43500,47400,48000,47400,29400,36200,44400,47100,49000,48124.6579579629,27300,36000,44800,48400,49800,51200,30300,36900,45700,49700,50200,46600],&#34;y&#34;:[28600,35600,43500,47400,48000,47400,29400,36200,44400,47100,49000,48124.6579579629,27300,36000,44800,48400,49800,51200,30300,36900,45700,49700,50200,46600,30600,37600,47200,50900,52100,49300,31300,39300,47400,52100,52800,52800],&#34;mode&#34;:&#34;markers&#34;,&#34;alpha_stroke&#34;:1,&#34;sizes&#34;:[10,100],&#34;spans&#34;:[1,20],&#34;type&#34;:&#34;scatter&#34;},&#34;5cd413b26128&#34;:{&#34;x&#34;:[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,28600,35600,43500,47400,48000,47400,29400,36200,44400,47100,49000,48124.6579579629,27300,36000,44800,48400,49800,51200],&#34;y&#34;:[28600,35600,43500,47400,48000,47400,29400,36200,44400,47100,49000,48124.6579579629,27300,36000,44800,48400,49800,51200,30300,36900,45700,49700,50200,46600,30600,37600,47200,50900,52100,49300,31300,39300,47400,52100,52800,52800],&#34;mode&#34;:&#34;markers&#34;,&#34;alpha_stroke&#34;:1,&#34;sizes&#34;:[10,100],&#34;spans&#34;:[1,20],&#34;type&#34;:&#34;scatter&#34;}},&#34;source&#34;:&#34;A&#34;,&#34;config&#34;:{&#34;showSendToCloud&#34;:false},&#34;highlight&#34;:{&#34;on&#34;:&#34;plotly_click&#34;,&#34;persistent&#34;:false,&#34;dynamic&#34;:false,&#34;selectize&#34;:false,&#34;opacityDim&#34;:0.2,&#34;selected&#34;:{&#34;opacity&#34;:1},&#34;debounce&#34;:0},&#34;subplot&#34;:true,&#34;.hideLegend&#34;:true,&#34;shinyEvents&#34;:[&#34;plotly_hover&#34;,&#34;plotly_click&#34;,&#34;plotly_selected&#34;,&#34;plotly_relayout&#34;,&#34;plotly_brushed&#34;,&#34;plotly_brushing&#34;,&#34;plotly_clickannotation&#34;,&#34;plotly_doubleclick&#34;,&#34;plotly_deselect&#34;,&#34;plotly_afterplot&#34;,&#34;plotly_sunburstclick&#34;],&#34;base_url&#34;:&#34;https://plot.ly&#34;},&#34;evals&#34;:[],&#34;jsHooks&#34;:[]}&lt;/script&gt;

ts_lags(tbts_women, c(5, 10, 15))
&lt;div id=&#34;htmlwidget-2&#34; style=&#34;width:672px;height:480px;&#34; class=&#34;plotly html-widget&#34;&gt;&lt;/div&gt;
&lt;script type=&#34;application/json&#34; data-for=&#34;htmlwidget-2&#34;&gt;{&#34;x&#34;:{&#34;data&#34;:[{&#34;x&#34;:[26600,35000,42600,44800,44700,29200,34800,42900,44900,45900,29500,35000,43400,46300,46800,31000,35900,45100,48400,45600,30900,37100,45000,50000,49800],&#34;y&#34;:[29200,34800,42900,44900,45900,29500,35000,43400,46300,46800,31000,35900,45100,48400,45600,30900,37100,45000,50000,49800,30900,37900,45700,50600,52100],&#34;mode&#34;:&#34;markers&#34;,&#34;type&#34;:&#34;scatter&#34;,&#34;marker&#34;:{&#34;color&#34;:&#34;rgba(31,119,180,1)&#34;,&#34;line&#34;:{&#34;color&#34;:&#34;rgba(31,119,180,1)&#34;}},&#34;error_y&#34;:{&#34;color&#34;:&#34;rgba(31,119,180,1)&#34;},&#34;error_x&#34;:{&#34;color&#34;:&#34;rgba(31,119,180,1)&#34;},&#34;line&#34;:{&#34;color&#34;:&#34;rgba(31,119,180,1)&#34;},&#34;xaxis&#34;:&#34;x&#34;,&#34;yaxis&#34;:&#34;y&#34;,&#34;frame&#34;:null},{&#34;x&#34;:[26600,35000,42600,44800,44700,29200,34800,42900,44900,45900,29500,35000,43400,46300,46800,31000,35900,45100,48400,45600],&#34;y&#34;:[29500,35000,43400,46300,46800,31000,35900,45100,48400,45600,30900,37100,45000,50000,49800,30900,37900,45700,50600,52100],&#34;mode&#34;:&#34;markers&#34;,&#34;type&#34;:&#34;scatter&#34;,&#34;marker&#34;:{&#34;color&#34;:&#34;rgba(255,127,14,1)&#34;,&#34;line&#34;:{&#34;color&#34;:&#34;rgba(255,127,14,1)&#34;}},&#34;error_y&#34;:{&#34;color&#34;:&#34;rgba(255,127,14,1)&#34;},&#34;error_x&#34;:{&#34;color&#34;:&#34;rgba(255,127,14,1)&#34;},&#34;line&#34;:{&#34;color&#34;:&#34;rgba(255,127,14,1)&#34;},&#34;xaxis&#34;:&#34;x2&#34;,&#34;yaxis&#34;:&#34;y&#34;,&#34;frame&#34;:null},{&#34;x&#34;:[26600,35000,42600,44800,44700,29200,34800,42900,44900,45900,29500,35000,43400,46300,46800],&#34;y&#34;:[31000,35900,45100,48400,45600,30900,37100,45000,50000,49800,30900,37900,45700,50600,52100],&#34;mode&#34;:&#34;markers&#34;,&#34;type&#34;:&#34;scatter&#34;,&#34;marker&#34;:{&#34;color&#34;:&#34;rgba(44,160,44,1)&#34;,&#34;line&#34;:{&#34;color&#34;:&#34;rgba(44,160,44,1)&#34;}},&#34;error_y&#34;:{&#34;color&#34;:&#34;rgba(44,160,44,1)&#34;},&#34;error_x&#34;:{&#34;color&#34;:&#34;rgba(44,160,44,1)&#34;},&#34;line&#34;:{&#34;color&#34;:&#34;rgba(44,160,44,1)&#34;},&#34;xaxis&#34;:&#34;x3&#34;,&#34;yaxis&#34;:&#34;y&#34;,&#34;frame&#34;:null}],&#34;layout&#34;:{&#34;xaxis&#34;:{&#34;domain&#34;:[0,0.313333333333333],&#34;automargin&#34;:true,&#34;title&#34;:&#34;&#34;,&#34;range&#34;:[26600,52100],&#34;anchor&#34;:&#34;y&#34;},&#34;xaxis2&#34;:{&#34;domain&#34;:[0.353333333333333,0.646666666666667],&#34;automargin&#34;:true,&#34;title&#34;:&#34;&#34;,&#34;range&#34;:[26600,52100],&#34;anchor&#34;:&#34;y&#34;},&#34;xaxis3&#34;:{&#34;domain&#34;:[0.686666666666667,1],&#34;automargin&#34;:true,&#34;title&#34;:&#34;&#34;,&#34;range&#34;:[26600,52100],&#34;anchor&#34;:&#34;y&#34;},&#34;yaxis&#34;:{&#34;domain&#34;:[0,1],&#34;automargin&#34;:true,&#34;range&#34;:[26600,52100],&#34;title&#34;:[],&#34;anchor&#34;:&#34;x&#34;},&#34;annotations&#34;:[{&#34;text&#34;:&#34;Lag 5&#34;,&#34;xref&#34;:&#34;paper&#34;,&#34;yref&#34;:&#34;paper&#34;,&#34;yanchor&#34;:&#34;bottom&#34;,&#34;xanchor&#34;:&#34;center&#34;,&#34;align&#34;:&#34;center&#34;,&#34;x&#34;:0.156666666666667,&#34;y&#34;:0.9,&#34;showarrow&#34;:false},{&#34;text&#34;:&#34;Lag 10&#34;,&#34;xref&#34;:&#34;paper&#34;,&#34;yref&#34;:&#34;paper&#34;,&#34;yanchor&#34;:&#34;bottom&#34;,&#34;xanchor&#34;:&#34;center&#34;,&#34;align&#34;:&#34;center&#34;,&#34;x&#34;:0.5,&#34;y&#34;:0.9,&#34;showarrow&#34;:false},{&#34;text&#34;:&#34;Lag 15&#34;,&#34;xref&#34;:&#34;paper&#34;,&#34;yref&#34;:&#34;paper&#34;,&#34;yanchor&#34;:&#34;bottom&#34;,&#34;xanchor&#34;:&#34;center&#34;,&#34;align&#34;:&#34;center&#34;,&#34;x&#34;:0.843333333333333,&#34;y&#34;:0.9,&#34;showarrow&#34;:false}],&#34;shapes&#34;:[],&#34;images&#34;:[],&#34;margin&#34;:{&#34;b&#34;:40,&#34;l&#34;:60,&#34;t&#34;:25,&#34;r&#34;:10},&#34;hovermode&#34;:&#34;closest&#34;,&#34;showlegend&#34;:false,&#34;title&#34;:&#34;tbts_women - Series (Y axis) vs. Lags (X axis)&#34;},&#34;attrs&#34;:{&#34;5cd45cce3ef1&#34;:{&#34;x&#34;:[null,null,null,null,null,26600,35000,42600,44800,44700,29200,34800,42900,44900,45900,29500,35000,43400,46300,46800,31000,35900,45100,48400,45600,30900,37100,45000,50000,49800],&#34;y&#34;:[26600,35000,42600,44800,44700,29200,34800,42900,44900,45900,29500,35000,43400,46300,46800,31000,35900,45100,48400,45600,30900,37100,45000,50000,49800,30900,37900,45700,50600,52100],&#34;mode&#34;:&#34;markers&#34;,&#34;alpha_stroke&#34;:1,&#34;sizes&#34;:[10,100],&#34;spans&#34;:[1,20],&#34;type&#34;:&#34;scatter&#34;},&#34;5cd46e8f2bd7&#34;:{&#34;x&#34;:[null,null,null,null,null,null,null,null,null,null,26600,35000,42600,44800,44700,29200,34800,42900,44900,45900,29500,35000,43400,46300,46800,31000,35900,45100,48400,45600],&#34;y&#34;:[26600,35000,42600,44800,44700,29200,34800,42900,44900,45900,29500,35000,43400,46300,46800,31000,35900,45100,48400,45600,30900,37100,45000,50000,49800,30900,37900,45700,50600,52100],&#34;mode&#34;:&#34;markers&#34;,&#34;alpha_stroke&#34;:1,&#34;sizes&#34;:[10,100],&#34;spans&#34;:[1,20],&#34;type&#34;:&#34;scatter&#34;},&#34;5cd474c659dd&#34;:{&#34;x&#34;:[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,26600,35000,42600,44800,44700,29200,34800,42900,44900,45900,29500,35000,43400,46300,46800],&#34;y&#34;:[26600,35000,42600,44800,44700,29200,34800,42900,44900,45900,29500,35000,43400,46300,46800,31000,35900,45100,48400,45600,30900,37100,45000,50000,49800,30900,37900,45700,50600,52100],&#34;mode&#34;:&#34;markers&#34;,&#34;alpha_stroke&#34;:1,&#34;sizes&#34;:[10,100],&#34;spans&#34;:[1,20],&#34;type&#34;:&#34;scatter&#34;}},&#34;source&#34;:&#34;A&#34;,&#34;config&#34;:{&#34;showSendToCloud&#34;:false},&#34;highlight&#34;:{&#34;on&#34;:&#34;plotly_click&#34;,&#34;persistent&#34;:false,&#34;dynamic&#34;:false,&#34;selectize&#34;:false,&#34;opacityDim&#34;:0.2,&#34;selected&#34;:{&#34;opacity&#34;:1},&#34;debounce&#34;:0},&#34;subplot&#34;:true,&#34;.hideLegend&#34;:true,&#34;shinyEvents&#34;:[&#34;plotly_hover&#34;,&#34;plotly_click&#34;,&#34;plotly_selected&#34;,&#34;plotly_relayout&#34;,&#34;plotly_brushed&#34;,&#34;plotly_brushing&#34;,&#34;plotly_clickannotation&#34;,&#34;plotly_doubleclick&#34;,&#34;plotly_deselect&#34;,&#34;plotly_afterplot&#34;,&#34;plotly_sunburstclick&#34;],&#34;base_url&#34;:&#34;https://plot.ly&#34;},&#34;evals&#34;:[],&#34;jsHooks&#34;:[]}&lt;/script&gt;
&lt;p&gt;Now, let’s fit an arima model to the time series with the auto.arima from the forecast library. The summary shows that the auto.arima has identified a SAR(2) process with drift and additionally an element of random walk. The checkresiduals function plots the residuals from the arima model, the autocorrelation of the residuals and a histogram of the residual distribution. The Ljung-Box test suggests that only white noise remains in the residual. The ggseasonplot plots the salary distribution on age for the years 2014-2019, remember that we used age as a season in this approach.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;arimamodel_men &amp;lt;- auto.arima(tbts_men)

summary(arimamodel_men)
## Series: tbts_men 
## ARIMA(0,0,0)(2,1,0)[6] with drift 
## 
## Coefficients:
##         sar1     sar2     drift
##       -0.761  -0.6098  128.8569
## s.e.   0.158   0.1435   16.1691
## 
## sigma^2 estimated as 1163963:  log likelihood=-254.04
## AIC=516.08   AICc=517.68   BIC=521.69
## 
## Training set error measures:
##                     ME     RMSE      MAE        MPE    MAPE     MASE      ACF1
## Training set -25.68999 934.3299 573.1137 -0.1985635 1.37638 0.434177 0.2314468

checkresiduals(arimamodel_men)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-9-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;## 
##  Ljung-Box test
## 
## data:  Residuals from ARIMA(0,0,0)(2,1,0)[6] with drift
## Q* = 3.9755, df = 4, p-value = 0.4093
## 
## Model df: 3.   Total lags used: 7

ggseasonplot(tbts_men)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-9-2.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;For women, the auto.arima is not able to pick up any SAR. The best fit is according to auto.arima is a constant drift.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;arimamodel_women &amp;lt;- auto.arima(tbts_women)

summary(arimamodel_women)
## Series: tbts_women 
## ARIMA(0,0,0)(0,1,0)[5] with drift 
## 
## Coefficients:
##          drift
##       188.0000
## s.e.   43.5542
## 
## sigma^2 estimated as 1235313:  log likelihood=-210.3
## AIC=424.59   AICc=425.14   BIC=427.03
## 
## Training set error measures:
##                    ME    RMSE     MAE         MPE     MAPE      MASE
## Training set 6.362663 994.108 699.696 -0.07692376 1.730501 0.6551461
##                     ACF1
## Training set -0.07256362

checkresiduals(arimamodel_women)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-10-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;## 
##  Ljung-Box test
## 
## data:  Residuals from ARIMA(0,0,0)(0,1,0)[5] with drift
## Q* = 5.4793, df = 5, p-value = 0.3602
## 
## Model df: 1.   Total lags used: 6

ggseasonplot(tbts_women)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-10-2.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;An AR(p) model assumes that a time series Yt can be modelled by a linear function of the first p of its lagged values. Let’s first start to model a seasonal SAR(1) model with the dynlm package. Each year the salaries increase by a fixed amount and a part that is relative to the salary size. I will use the NeweyWest function from the Sandwich package throughout this post to get heteroskedasticity- and autocorrelation-consistent error estimates.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;dynmodel_men &amp;lt;- dynlm(ts(salary) ~ L(ts(salary), 6), data = tb_men)

assess_model(dynmodel_men, time(tbts_men)[7:36], tb_men[7:36,], no_n = TRUE) 
## 
## Time series regression with &amp;quot;ts&amp;quot; data:
## Start = 7, End = 36
## 
## Call:
## dynlm(formula = ts(salary) ~ L(ts(salary), 6), data = tb_men)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -5517.7  -371.7    48.9   418.0  2600.3 
## 
## Coefficients:
##                   Estimate Std. Error t value Pr(&amp;gt;|t|)    
## (Intercept)      4.339e+02  1.575e+03   0.275    0.785    
## L(ts(salary), 6) 1.009e+00  3.608e-02  27.980   &amp;lt;2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 1522 on 28 degrees of freedom
## Multiple R-squared:  0.9655, Adjusted R-squared:  0.9642 
## F-statistic: 782.9 on 1 and 28 DF,  p-value: &amp;lt; 2.2e-16
## 
## 
## t test of coefficients:
## 
##                    Estimate Std. Error t value Pr(&amp;gt;|t|)    
## (Intercept)      4.3389e+02 1.8030e+03  0.2406   0.8116    
## L(ts(salary), 6) 1.0094e+00 4.3076e-02 23.4340   &amp;lt;2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-11-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;## 
##  Breusch-Godfrey test for serial correlation of order up to 6
## 
## data:  Residuals
## LM test = 9.8199, df = 6, p-value = 0.1324&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-11-2.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;
dynmodel_women &amp;lt;- dynlm(ts(salary) ~ L(ts(salary), 5), data = tb_women)

assess_model(dynmodel_women, time(tbts_women)[6:30], tb_women[6:30,], no_n = TRUE)
## 
## Time series regression with &amp;quot;ts&amp;quot; data:
## Start = 6, End = 30
## 
## Call:
## dynlm(formula = ts(salary) ~ L(ts(salary), 5), data = tb_women)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2266.8  -683.0  -148.9   501.2  3157.1 
## 
## Coefficients:
##                   Estimate Std. Error t value Pr(&amp;gt;|t|)    
## (Intercept)      1.323e+02  1.316e+03   0.101    0.921    
## L(ts(salary), 5) 1.020e+00  3.206e-02  31.816   &amp;lt;2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 1126 on 23 degrees of freedom
## Multiple R-squared:  0.9778, Adjusted R-squared:  0.9768 
## F-statistic:  1012 on 1 and 23 DF,  p-value: &amp;lt; 2.2e-16
## 
## 
## t test of coefficients:
## 
##                    Estimate Std. Error t value Pr(&amp;gt;|t|)    
## (Intercept)      1.3234e+02 1.1458e+03  0.1155   0.9091    
## L(ts(salary), 5) 1.0200e+00 2.9112e-02 35.0356   &amp;lt;2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-11-3.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;## 
##  Breusch-Godfrey test for serial correlation of order up to 5
## 
## data:  Residuals
## LM test = 4.8683, df = 5, p-value = 0.4322&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-11-4.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Now also add weights according to the number of engineers in the different strata. Note that the dynamic approach uses the information from the first year to predict the second. Weights from the first year have to be excluded. The fixed amount has decreased from 434 to 134 SEK and the relative part has increased from 0.94 % to 1.6 %. The fixed part is not statistically significant in either of these two models.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;dynmodel_men &amp;lt;- dynlm(ts(salary) ~ L(ts(salary), 6), data = tb_men, weights = n[7:36])

assess_model(dynmodel_men, time(tbts_men)[7:36], tb_men[7:36,])
## 
## Time series regression with &amp;quot;ts&amp;quot; data:
## Start = 7, End = 36
## 
## Call:
## dynlm(formula = ts(salary) ~ L(ts(salary), 6), data = tb_men, 
##     weights = n[7:36])
## 
## Weighted Residuals:
##     Min      1Q  Median      3Q     Max 
## -164527  -12301       0   48694  129992 
## 
## Coefficients:
##                   Estimate Std. Error t value Pr(&amp;gt;|t|)    
## (Intercept)      1.343e+02  1.083e+03   0.124    0.902    
## L(ts(salary), 6) 1.016e+00  2.398e-02  42.392   &amp;lt;2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 75460 on 21 degrees of freedom
## Multiple R-squared:  0.9884, Adjusted R-squared:  0.9879 
## F-statistic:  1797 on 1 and 21 DF,  p-value: &amp;lt; 2.2e-16
## 
## 
## t test of coefficients:
## 
##                   Estimate Std. Error t value Pr(&amp;gt;|t|)    
## (Intercept)      134.30571  856.80707  0.1568   0.8769    
## L(ts(salary), 6)   1.01643    0.01883 53.9780   &amp;lt;2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-12-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;## 
##  Breusch-Godfrey test for serial correlation of order up to 6
## 
## data:  Residuals
## LM test = 9.8199, df = 6, p-value = 0.1324&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-12-2.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;
dynmodel_women &amp;lt;- dynlm(ts(salary) ~ L(ts(salary), 5), data = tb_women, weights = n[6:30])

assess_model(dynmodel_women, time(tbts_women)[6:30], tb_women[6:30,])
## 
## Time series regression with &amp;quot;ts&amp;quot; data:
## Start = 6, End = 30
## 
## Call:
## dynlm(formula = ts(salary) ~ L(ts(salary), 5), data = tb_women, 
##     weights = n[6:30])
## 
## Weighted Residuals:
##     Min      1Q  Median      3Q     Max 
## -106359  -30874       0   33627  144325 
## 
## Coefficients:
##                    Estimate Std. Error t value Pr(&amp;gt;|t|)    
## (Intercept)      -735.01210 1575.94230  -0.466    0.646    
## L(ts(salary), 5)    1.03745    0.03693  28.089   &amp;lt;2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 60090 on 21 degrees of freedom
## Multiple R-squared:  0.9741, Adjusted R-squared:  0.9728 
## F-statistic:   789 on 1 and 21 DF,  p-value: &amp;lt; 2.2e-16
## 
## 
## t test of coefficients:
## 
##                     Estimate  Std. Error t value Pr(&amp;gt;|t|)    
## (Intercept)      -735.012099  708.461714 -1.0375   0.3113    
## L(ts(salary), 5)    1.037452    0.014893 69.6602   &amp;lt;2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-12-3.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;## 
##  Breusch-Godfrey test for serial correlation of order up to 5
## 
## data:  Residuals
## LM test = 4.8683, df = 5, p-value = 0.4322&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-12-4.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Let’s drop the non-significant intercept. The relative salary raise increases to 1,94 % per year for men and 2,03 % for women.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;dynmodel_men &amp;lt;- dynlm(ts(salary) ~ L(ts(salary), 6) - 1, data = tb_men, weights = n[7:36])

assess_model(dynmodel_men, time(tbts_men)[7:36], tb_men[7:36,])
## 
## Time series regression with &amp;quot;ts&amp;quot; data:
## Start = 7, End = 36
## 
## Call:
## dynlm(formula = ts(salary) ~ L(ts(salary), 6) - 1, data = tb_men, 
##     weights = n[7:36])
## 
## Weighted Residuals:
##     Min      1Q  Median      3Q     Max 
## -165299   -8902       0   47573  133181 
## 
## Coefficients:
##                  Estimate Std. Error t value Pr(&amp;gt;|t|)    
## L(ts(salary), 6) 1.019380   0.002739   372.1   &amp;lt;2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 73750 on 22 degrees of freedom
## Multiple R-squared:  0.9998, Adjusted R-squared:  0.9998 
## F-statistic: 1.385e+05 on 1 and 22 DF,  p-value: &amp;lt; 2.2e-16
## 
## 
## t test of coefficients:
## 
##                   Estimate Std. Error t value  Pr(&amp;gt;|t|)    
## L(ts(salary), 6) 1.0193798  0.0020172  505.35 &amp;lt; 2.2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-13-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;## 
##  Breusch-Godfrey test for serial correlation of order up to 6
## 
## data:  Residuals
## LM test = 9.9529, df = 6, p-value = 0.1266&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-13-2.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;
dynmodel_women &amp;lt;- dynlm(ts(salary) ~ L(ts(salary),5) - 1, data = tb_women, weights = n[6:30])

assess_model(dynmodel_women, time(tbts_women)[6:30], tb_women[6:30,])
## 
## Time series regression with &amp;quot;ts&amp;quot; data:
## Start = 6, End = 30
## 
## Call:
## dynlm(formula = ts(salary) ~ L(ts(salary), 5) - 1, data = tb_women, 
##     weights = n[6:30])
## 
## Weighted Residuals:
##     Min      1Q  Median      3Q     Max 
## -103209  -32580       0   36088  146345 
## 
## Coefficients:
##                  Estimate Std. Error t value Pr(&amp;gt;|t|)    
## L(ts(salary), 5) 1.020343   0.004217   241.9   &amp;lt;2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 59020 on 22 degrees of freedom
## Multiple R-squared:  0.9996, Adjusted R-squared:  0.9996 
## F-statistic: 5.853e+04 on 1 and 22 DF,  p-value: &amp;lt; 2.2e-16
## 
## 
## t test of coefficients:
## 
##                   Estimate Std. Error t value  Pr(&amp;gt;|t|)    
## L(ts(salary), 5) 1.0203429  0.0035569  286.86 &amp;lt; 2.2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-13-3.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;## 
##  Breusch-Godfrey test for serial correlation of order up to 5
## 
## data:  Residuals
## LM test = 4.9459, df = 5, p-value = 0.4225&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-13-4.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Now, let’s compare with a linear model. The relative salary raise increases to 1,92 % per year for men and 2.06 % for women.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model_men &amp;lt;- lm(log(salary) ~ year_n + age_n + I(age_n^2), data = tb_men, weights = n)

assess_model(model_men, time(tbts_men), tb_men, doexp = TRUE)
## 
## Call:
## lm(formula = log(salary) ~ year_n + age_n + I(age_n^2), data = tb_men, 
##     weights = n)
## 
## Weighted Residuals:
##     Min      1Q  Median      3Q     Max 
## -3.5386 -0.1234  0.0000  0.7387  2.7634 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(&amp;gt;|t|)    
## (Intercept) -2.925e+01  3.086e+00  -9.479 2.08e-09 ***
## year_n       1.917e-02  1.530e-03  12.534 9.23e-12 ***
## age_n        5.160e-02  2.286e-03  22.569  &amp;lt; 2e-16 ***
## I(age_n^2)  -4.670e-04  2.581e-05 -18.094 4.24e-15 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 1.694 on 23 degrees of freedom
## Multiple R-squared:  0.9898, Adjusted R-squared:  0.9885 
## F-statistic: 746.4 on 3 and 23 DF,  p-value: &amp;lt; 2.2e-16
## 
## 
## t test of coefficients:
## 
##                Estimate  Std. Error t value  Pr(&amp;gt;|t|)    
## (Intercept) -2.9252e+01  1.8119e+00 -16.145 4.852e-14 ***
## year_n       1.9171e-02  9.0239e-04  21.244 &amp;lt; 2.2e-16 ***
## age_n        5.1595e-02  1.6460e-03  31.347 &amp;lt; 2.2e-16 ***
## I(age_n^2)  -4.6705e-04  1.7897e-05 -26.097 &amp;lt; 2.2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-14-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;## 
##  Breusch-Godfrey test for serial correlation of order up to 7
## 
## data:  Residuals
## LM test = 6.7232, df = 7, p-value = 0.4583
## Don&amp;#39;t know how to automatically pick scale for object of type ts. Defaulting to continuous.&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-14-2.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;
model_women &amp;lt;- lm(log(salary) ~ year_n + age_n + I(age_n^2), data = tb_women, weights = n)

assess_model(model_women, time(tbts_women), tb_women, doexp = TRUE)
## 
## Call:
## lm(formula = log(salary) ~ year_n + age_n + I(age_n^2), data = tb_women, 
##     weights = n)
## 
## Weighted Residuals:
##      Min       1Q   Median       3Q      Max 
## -2.31829 -0.34720  0.05136  0.89951  2.33846 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(&amp;gt;|t|)    
## (Intercept) -3.228e+01  4.347e+00  -7.427 1.50e-07 ***
## year_n       2.063e-02  2.154e-03   9.580 1.71e-09 ***
## age_n        5.521e-02  3.330e-03  16.577 2.77e-14 ***
## I(age_n^2)  -5.202e-04  3.912e-05 -13.298 2.77e-12 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 1.288 on 23 degrees of freedom
## Multiple R-squared:  0.9798, Adjusted R-squared:  0.9771 
## F-statistic: 371.4 on 3 and 23 DF,  p-value: &amp;lt; 2.2e-16
## 
## 
## t test of coefficients:
## 
##                Estimate  Std. Error  t value  Pr(&amp;gt;|t|)    
## (Intercept) -3.2285e+01  3.9562e+00  -8.1605 3.045e-08 ***
## year_n       2.0631e-02  1.9667e-03  10.4903 3.075e-10 ***
## age_n        5.5206e-02  2.7439e-03  20.1196 4.246e-16 ***
## I(age_n^2)  -5.2025e-04  3.3832e-05 -15.3777 1.357e-13 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-14-3.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;## 
##  Breusch-Godfrey test for serial correlation of order up to 7
## 
## data:  Residuals
## LM test = 11.678, df = 7, p-value = 0.1117
## Don&amp;#39;t know how to automatically pick scale for object of type ts. Defaulting to continuous.&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-14-4.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Now also add the SAR(2). The summary shows that the R-squared bumps up a few notches for men, although it does not show that the second year lag is significant. However, the sandwich package assures us that the SAR(2) process is significant at the 95 % level. For women, the second year lag is not significant in the summary nor the HAC error estimate.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;dynmodel_men &amp;lt;- dynlm(ts(salary) ~ L(ts(salary), 6) + L(ts(salary), 12) - 1, data = tb_men, weights = n[13:36])

assess_model(dynmodel_men, time(tbts_men)[13:36], tb_men[13:36,]) 
## 
## Time series regression with &amp;quot;ts&amp;quot; data:
## Start = 13, End = 36
## 
## Call:
## dynlm(formula = ts(salary) ~ L(ts(salary), 6) + L(ts(salary), 
##     12) - 1, data = tb_men, weights = n[13:36])
## 
## Weighted Residuals:
##     Min      1Q  Median      3Q     Max 
## -127942  -17989       0   42788  123721 
## 
## Coefficients:
##                   Estimate Std. Error t value Pr(&amp;gt;|t|)   
## L(ts(salary), 6)    0.7282     0.2371   3.071  0.00692 **
## L(ts(salary), 12)   0.2985     0.2417   1.235  0.23356   
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 69840 on 17 degrees of freedom
## Multiple R-squared:  0.9999, Adjusted R-squared:  0.9999 
## F-statistic: 6.4e+04 on 2 and 17 DF,  p-value: &amp;lt; 2.2e-16
## 
## 
## t test of coefficients:
## 
##                   Estimate Std. Error t value  Pr(&amp;gt;|t|)    
## L(ts(salary), 6)   0.72822    0.11497  6.3338 7.484e-06 ***
## L(ts(salary), 12)  0.29855    0.11741  2.5427   0.02102 *  
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-15-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;## 
##  Breusch-Godfrey test for serial correlation of order up to 5
## 
## data:  Residuals
## LM test = 3.9255, df = 5, p-value = 0.5602&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-06-02-salaries-and-time-series-regression_files/figure-html/unnamed-chunk-15-2.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;
dynmodel_women &amp;lt;- dynlm(ts(salary) ~ L(ts(salary), 5) + L(ts(salary), 10) - 1, data = tb_women, weights = n[11:30])

summary (dynmodel_women)
## 
## Time series regression with &amp;quot;ts&amp;quot; data:
## Start = 11, End = 30
## 
## Call:
## dynlm(formula = ts(salary) ~ L(ts(salary), 5) + L(ts(salary), 
##     10) - 1, data = tb_women, weights = n[11:30])
## 
## Weighted Residuals:
##     Min      1Q  Median      3Q     Max 
## -110096  -37862   -1787   33549  134747 
## 
## Coefficients:
##                   Estimate Std. Error t value Pr(&amp;gt;|t|)    
## L(ts(salary), 5)   0.96703    0.23193   4.169 0.000723 ***
## L(ts(salary), 10)  0.05749    0.23683   0.243 0.811298    
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 63340 on 16 degrees of freedom
## Multiple R-squared:  0.9996, Adjusted R-squared:  0.9996 
## F-statistic: 2.14e+04 on 2 and 16 DF,  p-value: &amp;lt; 2.2e-16

coeftest(dynmodel_women, vcov = NeweyWest, prewhite = F, adjust = T)
## 
## t test of coefficients:
## 
##                   Estimate Std. Error t value  Pr(&amp;gt;|t|)    
## L(ts(salary), 5)  0.967032   0.122156  7.9164 6.354e-07 ***
## L(ts(salary), 10) 0.057485   0.125308  0.4588    0.6526    
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
</description>
    </item>
    
    <item>
      <title>Estimating causal effects from aggregated data</title>
      <link>http://mikaellundqvist.rbind.io/2021/05/18/estimating-causal-effects-from-aggregated-data/</link>
      <pubDate>Tue, 18 May 2021 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2021/05/18/estimating-causal-effects-from-aggregated-data/</guid>
      <description>


&lt;p&gt;The publically available datasets from Statistics Sweden are aggregated tables. Groups with fewer than five records are filtered out not to have any individual data being made public.&lt;/p&gt;
&lt;p&gt;In this post, I am going to investigate with what precision it is possible to estimate the causal effect of predictors using aggregated data. I will use the dataset CPS1988 which is contained in the AER library. Cross-section data originating from the March 1988 Current Population Survey by the US Census Bureau.&lt;/p&gt;
&lt;p&gt;I will estimate the average treatment effect on wage for ethnicity and experience respectively. I will subclassify the predictors’ education and experience. I will balance on the observed confounders and make no attempts to handle unobserved covariates. I will not try to draw any conclusions on causal effects based on SUTVA assumptions.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.3     v purrr   0.3.4
## v tibble  3.1.0     v dplyr   1.0.5
## v tidyr   1.1.3     v stringr 1.4.0
## v readr   1.4.0     v forcats 0.5.1
## Warning: package &amp;#39;ggplot2&amp;#39; was built under R version 4.0.3
## Warning: package &amp;#39;tibble&amp;#39; was built under R version 4.0.5
## Warning: package &amp;#39;tidyr&amp;#39; was built under R version 4.0.5
## Warning: package &amp;#39;readr&amp;#39; was built under R version 4.0.3
## Warning: package &amp;#39;dplyr&amp;#39; was built under R version 4.0.5
## Warning: package &amp;#39;forcats&amp;#39; was built under R version 4.0.3
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
library (AER)
## Warning: package &amp;#39;AER&amp;#39; was built under R version 4.0.5
## Loading required package: car
## Warning: package &amp;#39;car&amp;#39; was built under R version 4.0.3
## Loading required package: carData
## Warning: package &amp;#39;carData&amp;#39; was built under R version 4.0.3
## 
## Attaching package: &amp;#39;car&amp;#39;
## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode
## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some
## Loading required package: lmtest
## Warning: package &amp;#39;lmtest&amp;#39; was built under R version 4.0.4
## Loading required package: zoo
## Warning: package &amp;#39;zoo&amp;#39; was built under R version 4.0.5
## 
## Attaching package: &amp;#39;zoo&amp;#39;
## The following objects are masked from &amp;#39;package:base&amp;#39;:
## 
##     as.Date, as.Date.numeric
## Loading required package: sandwich
## Warning: package &amp;#39;sandwich&amp;#39; was built under R version 4.0.3
## Loading required package: survival
## Warning: package &amp;#39;survival&amp;#39; was built under R version 4.0.5
library (bnlearn)
## Warning: package &amp;#39;bnlearn&amp;#39; was built under R version 4.0.3
library (PerformanceAnalytics)
## Loading required package: xts
## Warning: package &amp;#39;xts&amp;#39; was built under R version 4.0.3
## 
## Attaching package: &amp;#39;xts&amp;#39;
## The following objects are masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     first, last
## 
## Attaching package: &amp;#39;PerformanceAnalytics&amp;#39;
## The following object is masked from &amp;#39;package:graphics&amp;#39;:
## 
##     legend
library (tableone)
## Warning: package &amp;#39;tableone&amp;#39; was built under R version 4.0.4
library (Matching)
## Warning: package &amp;#39;Matching&amp;#39; was built under R version 4.0.5
## Loading required package: MASS
## 
## Attaching package: &amp;#39;MASS&amp;#39;
## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     select
## ## 
## ##  Matching (Version 4.9-9, Build Date: 2021-03-15)
## ##  See http://sekhon.berkeley.edu/matching for additional documentation.
## ##  Please cite software as:
## ##   Jasjeet S. Sekhon. 2011. ``Multivariate and Propensity Score Matching
## ##   Software with Automated Balance Optimization: The Matching package for R.&amp;#39;&amp;#39;
## ##   Journal of Statistical Software, 42(7): 1-52. 
## ##
library (WeightIt)
## Warning: package &amp;#39;WeightIt&amp;#39; was built under R version 4.0.5
library (lavaan)
## Warning: package &amp;#39;lavaan&amp;#39; was built under R version 4.0.5
## This is lavaan 0.6-8
## lavaan is FREE software! Please report any bugs.
library (tidySEM)
## Registered S3 methods overwritten by &amp;#39;tidySEM&amp;#39;:
##   method              from           
##   print.mplus.model   MplusAutomation
##   print.mplusObject   MplusAutomation
##   summary.mplus.model MplusAutomation
## 
## Attaching package: &amp;#39;tidySEM&amp;#39;
## The following objects are masked from &amp;#39;package:bnlearn&amp;#39;:
## 
##     nodes, nodes&amp;lt;-
library (cobalt)
## Warning: package &amp;#39;cobalt&amp;#39; was built under R version 4.0.4
##  cobalt (Version 4.3.1, Build Date: 2021-03-30 09:50:18 UTC)
library (jtools)
## Warning: package &amp;#39;jtools&amp;#39; was built under R version 4.0.5
## 
## Attaching package: &amp;#39;jtools&amp;#39;
## The following object is masked from &amp;#39;package:tidySEM&amp;#39;:
## 
##     get_data

# Argument: Vector with binned values; Value: Numeric vector where each value is the mean of the binwidth
unbin_bin &amp;lt;- function(x){
  unbin_x &amp;lt;- function(x) (parse_number(unlist(strsplit(as.character(x), &amp;quot;,&amp;quot;)))[1] + parse_number(unlist(strsplit(as.character(x), &amp;quot;,&amp;quot;)))[2])/2

  unlist(map(x, unbin_x))
}

data(CPS1988)

CPS1988_n &amp;lt;- CPS1988 %&amp;gt;%
  mutate(education = as.numeric(education)) %&amp;gt;%
  mutate(experience = as.numeric(experience)) %&amp;gt;%
  mutate(region = as.numeric(region)) %&amp;gt;%
  mutate(smsa = as.numeric(smsa)) %&amp;gt;%
  mutate(parttime = as.numeric(parttime)) %&amp;gt;%
  mutate(ethnicity = as.numeric(ethnicity))&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The correlation chart shows that many predictors are correlated with the response variable but also that many predictors are correlated with each other.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;chart.Correlation(CPS1988_n, histogram = TRUE, pch = 19)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-05-18-estmating-causal-effects-from-aggregated-data_files/figure-html/unnamed-chunk-2-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;A Directed Ascyclical Graph (DAG) is a useful tool to identify backdoor paths, confounders, mediators and colliders. A DAG is usually constructed by expert knowledge in the problem domain. There are also algorithms for Bayesian networks that can estimate a DAG based on the statistical properties of the data, these estimations need to be validated against expert knowledge. I will estimate a DAG using a Bayesian network, the Hill Climbing (HC) algorithm.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;hcmodel &amp;lt;- hc(CPS1988 %&amp;gt;%
  mutate(education = as.numeric(education)) %&amp;gt;%
  mutate(experience = as.numeric(experience)))

plot(hcmodel)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-05-18-estmating-causal-effects-from-aggregated-data_files/figure-html/unnamed-chunk-3-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Structural Equation Modeling (SEM) is a tool to represent a system of regressions. I will use Lavaan to represent the DAG from the Bayesian network above.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;semmodel = &amp;#39;
  education ~ wage
  wage ~ parttime
  experience ~ wage
  experience ~ parttime
  wage ~ ethnicity
  region ~ ethnicity
  region ~ smsa
  wage ~ smsa
  wage ~ region
  education ~ region
  education ~ parttime
  education ~ smsa
  smsa ~ ethnicity
  experience ~ education
  experience ~ ethnicity
  parttime ~ ethnicity
  &amp;#39;

semfit &amp;lt;- sem(semmodel,
  data =  CPS1988_n)
## Warning in lav_data_full(data = data, group = group, cluster = cluster, : lavaan
## WARNING: some observed variances are (at least) a factor 1000 times larger than
## others; use varTable(fit) to investigate

graph_sem(model = semfit)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-05-18-estmating-causal-effects-from-aggregated-data_files/figure-html/unnamed-chunk-4-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Since ethnicity is a binary variable I will use the Match algorithm to find individuals that are as similar as possible from the two groups African American and Caucasian. I will do a greedy matching based on Mahalanobis distance.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;xvars &amp;lt;- c(&amp;quot;education&amp;quot;, &amp;quot;experience&amp;quot;, &amp;quot;smsa&amp;quot;, &amp;quot;region&amp;quot;, &amp;quot;parttime&amp;quot;)

print(CreateTableOne(vars = xvars, strata = &amp;quot;ethnicity&amp;quot;, data = CPS1988, test = FALSE), smd = TRUE)
##                         Stratified by ethnicity
##                          cauc          afam          SMD   
##   n                      25923          2232               
##   education (mean (SD))  13.13 (2.90)  12.33 (2.77)   0.284
##   experience (mean (SD)) 18.15 (13.04) 18.74 (13.51)  0.044
##   smsa = yes (%)         19095 (73.7)   1837 (82.3)   0.210
##   region (%)                                          0.644
##      northeast            6073 (23.4)    368 (16.5)        
##      midwest              6486 (25.0)    377 (16.9)        
##      south                7468 (28.8)   1292 (57.9)        
##      west                 5896 (22.7)    195 ( 8.7)        
##   parttime = yes (%)      2280 ( 8.8)    244 (10.9)   0.072

greedymatch &amp;lt;- Match(Tr = as.integer(CPS1988$ethnicity) - 1, M = 1, X = data.frame(data.matrix(CPS1988[xvars])), replace = FALSE)

matched &amp;lt;- CPS1988[unlist(greedymatch[c(&amp;quot;index.treated&amp;quot;, &amp;quot;index.control&amp;quot;)]), ]

print(CreateTableOne(vars = xvars, strata = &amp;quot;ethnicity&amp;quot;, data = matched, test = FALSE), smd = TRUE)
##                         Stratified by ethnicity
##                          cauc          afam          SMD   
##   n                       2232          2232               
##   education (mean (SD))  12.33 (2.76)  12.33 (2.77)   0.001
##   experience (mean (SD)) 18.71 (13.44) 18.74 (13.51)  0.003
##   smsa = yes (%)          1837 (82.3)   1837 (82.3)  &amp;lt;0.001
##   region (%)                                          0.003
##      northeast             368 (16.5)    368 (16.5)        
##      midwest               375 (16.8)    377 (16.9)        
##      south                1293 (57.9)   1292 (57.9)        
##      west                  196 ( 8.8)    195 ( 8.7)        
##   parttime = yes (%)       244 (10.9)    244 (10.9)  &amp;lt;0.001

matched &amp;lt;- matched %&amp;gt;% mutate(ethnicity_n = as.integer(ethnicity) - 1)

t.test(matched$wage[matched$ethnicity_n == 1] - matched$wage[matched$ethnicity_n == 0])
## 
##  One Sample t-test
## 
## data:  matched$wage[matched$ethnicity_n == 1] - matched$wage[matched$ethnicity_n == 0]
## t = -12.989, df = 2231, p-value &amp;lt; 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  -131.18979  -96.77381
## sample estimates:
## mean of x 
## -113.9818&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Another way to estimate the causal effect of ethnicity on wage is by calculating the propensity score. By regressing on the treatment, i.e. the variable that we want to calculate the effect for, we can reduce the selection bias by balancing on the covariates. Below you can see the balancing before and after using the propensity score.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;W.out &amp;lt;- weightit(ethnicity ~ education + experience + smsa + region + parttime, 
  data = CPS1988, method = &amp;quot;ebal&amp;quot;)

model_lm_ethnicity &amp;lt;- lm(wage ~ ethnicity, data = CPS1988, weights = W.out$weights)

bal.tab(ethnicity ~ education + experience + smsa + region + parttime, 
  data = CPS1988, estimand = &amp;quot;ATT&amp;quot;, m.threshold = .05)
## Balance Measures
##                     Type Diff.Un      M.Threshold.Un
## education        Contin. -0.2909 Not Balanced, &amp;gt;0.05
## experience       Contin.  0.0435     Balanced, &amp;lt;0.05
## smsa_yes          Binary  0.0864 Not Balanced, &amp;gt;0.05
## region_northeast  Binary -0.0694 Not Balanced, &amp;gt;0.05
## region_midwest    Binary -0.0813 Not Balanced, &amp;gt;0.05
## region_south      Binary  0.2908 Not Balanced, &amp;gt;0.05
## region_west       Binary -0.1401 Not Balanced, &amp;gt;0.05
## parttime_yes      Binary  0.0214     Balanced, &amp;lt;0.05
## 
## Balance tally for mean differences
##                     count
## Balanced, &amp;lt;0.05         2
## Not Balanced, &amp;gt;0.05     6
## 
## Variable with the greatest mean difference
##   Variable Diff.Un      M.Threshold.Un
##  education -0.2909 Not Balanced, &amp;gt;0.05
## 
## Sample sizes
##      cauc afam
## All 25923 2232

bal.tab(W.out, m.threshold = .05, disp.v.ratio = TRUE)
## Call
##  weightit(formula = ethnicity ~ education + experience + smsa + 
##     region + parttime, data = CPS1988, method = &amp;quot;ebal&amp;quot;)
## 
## Balance Measures
##                     Type Diff.Adj     M.Threshold V.Ratio.Adj
## education        Contin.   0.0001 Balanced, &amp;lt;0.05      0.7731
## experience       Contin.   0.0000 Balanced, &amp;lt;0.05      0.9613
## smsa_yes          Binary   0.0000 Balanced, &amp;lt;0.05           .
## region_northeast  Binary   0.0000 Balanced, &amp;lt;0.05           .
## region_midwest    Binary  -0.0000 Balanced, &amp;lt;0.05           .
## region_south      Binary  -0.0000 Balanced, &amp;lt;0.05           .
## region_west       Binary  -0.0000 Balanced, &amp;lt;0.05           .
## parttime_yes      Binary   0.0001 Balanced, &amp;lt;0.05           .
## 
## Balance tally for mean differences
##                     count
## Balanced, &amp;lt;0.05         8
## Not Balanced, &amp;gt;0.05     0
## 
## Variable with the greatest mean difference
##   Variable Diff.Adj     M.Threshold
##  education   0.0001 Balanced, &amp;lt;0.05
## 
## Effective sample sizes
##                cauc   afam
## Unadjusted 25923.   2232. 
## Adjusted   25833.39 1233.1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Estimate the causal effect of experience on wage by calculating the propensity score.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;W.out &amp;lt;- weightit(experience ~ ethnicity + education + smsa + region + parttime,
  data = CPS1988, method = &amp;quot;ebal&amp;quot;)

model_lm_experience &amp;lt;- lm(wage ~ experience, data = CPS1988, weights = W.out$weights)

bal.tab(experience  ~ ethnicity + education + smsa + region + parttime,
  data = CPS1988, estimand = &amp;quot;ATT&amp;quot;, m.threshold = .05)
## Balance Measures
##                     Type Corr.Un
## ethnicity_afam    Binary  0.0121
## education        Contin. -0.2867
## smsa_yes          Binary -0.0397
## region_northeast  Binary  0.0251
## region_midwest    Binary -0.0166
## region_south      Binary  0.0114
## region_west       Binary -0.0212
## parttime_yes      Binary -0.0942
## 
## Sample sizes
##     Total
## All 28155

bal.tab(W.out, m.threshold = .05, disp.v.ratio = TRUE)
## Call
##  weightit(formula = experience ~ ethnicity + education + smsa + 
##     region + parttime, data = CPS1988, method = &amp;quot;ebal&amp;quot;)
## 
## Balance Measures
##                     Type Corr.Adj Diff.Adj     M.Threshold
## ethnicity_afam    Binary       -0       -0 Balanced, &amp;lt;0.05
## education        Contin.       -0        0 Balanced, &amp;lt;0.05
## smsa_yes          Binary       -0       -0 Balanced, &amp;lt;0.05
## region_northeast  Binary        0        0 Balanced, &amp;lt;0.05
## region_midwest    Binary        0        0 Balanced, &amp;lt;0.05
## region_south      Binary       -0       -0 Balanced, &amp;lt;0.05
## region_west       Binary       -0       -0 Balanced, &amp;lt;0.05
## parttime_yes      Binary        0        0 Balanced, &amp;lt;0.05
## 
## Balance tally for target mean differences
##                     count
## Balanced, &amp;lt;0.05         8
## Not Balanced, &amp;gt;0.05     0
## 
## Variable with the greatest target mean difference
##   Variable Diff.Adj     M.Threshold
##  education        0 Balanced, &amp;lt;0.05
## 
## Effective sample sizes
##               Total
## Unadjusted 28155.  
## Adjusted   25793.54&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Let’s now investigate how aggregating the numerical predictors in the data affects the precision when estimating the causal effect on wage. I will also filter out groups with less than 5 persons in them so that any individual can not be identified in the material. The binning and filtering reduces the original dataset by 98.9 %. By expanding the reduced dataset the original dataset can be estimated.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;CPS1988_refi &amp;lt;- CPS1988 %&amp;gt;%
  mutate(education = as.numeric(education)) %&amp;gt;%
  mutate(experience = as.numeric(experience)) %&amp;gt;%
  mutate(education = cut_interval(education, 5)) %&amp;gt;%
  mutate(experience = cut_interval(experience, 5)) %&amp;gt;%
  group_by(education, experience, ethnicity, smsa, region, parttime) %&amp;gt;%
  mutate (wage = mean(wage)) %&amp;gt;%
  group_by(wage, education, experience, ethnicity, smsa, region, parttime) %&amp;gt;% 
  tally() %&amp;gt;%
  mutate(experience = unbin_bin(experience)) %&amp;gt;%
  mutate(education = unbin_bin(education)) %&amp;gt;%
  filter(n &amp;gt; 4)  

dim(CPS1988_refi)
## [1] 302   8

CPS1988_refiexp &amp;lt;- CPS1988_refi[rep(seq(nrow(CPS1988_refi)), CPS1988_refi$n),]

dim(CPS1988_refiexp) 
## [1] 27797     8&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;How has the reduction affected the DAG? It is not possible to use weights in the hc algorithm. Therefore I will use the expanded table based on the data in the aggregated table.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;hcmodel_refiexp &amp;lt;- hc(dplyr::select(CPS1988_refiexp %&amp;gt;%
  mutate(education = as.numeric(education)) %&amp;gt;%
  mutate(experience = as.numeric(experience)), -n))

plot(hcmodel_refiexp)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-05-18-estmating-causal-effects-from-aggregated-data_files/figure-html/unnamed-chunk-9-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;For comparison, I will plot the coefficients for ethnicity for the linear model based on the original data, aggregated data and the expanded data. I will use robust (Heteroskedasticity-Consistent) error estimates.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- lm(wage ~ ethnicity, data = CPS1988)

model_refi &amp;lt;- lm(wage ~ ethnicity, data = CPS1988_refi, weights = n)

model_refiexp &amp;lt;- lm(wage ~ ethnicity, data = CPS1988_refiexp)

plot_summs(model, model_refi, model_refiexp, robust = &amp;quot;HC1&amp;quot;, 
  model.names = c(
    &amp;quot;Original dataset&amp;quot;, 
    &amp;quot;Reduced dataset using weights&amp;quot;, 
    &amp;quot;Expanded dataset&amp;quot;))
## Loading required namespace: broom.mixed
## Warning in checkMatrixPackageVersion(): Package version inconsistency detected.
## TMB was built with Matrix version 1.3.2
## Current Matrix version is 1.2.18
## Please re-install &amp;#39;TMB&amp;#39; from source using install.packages(&amp;#39;TMB&amp;#39;, type = &amp;#39;source&amp;#39;) or ask CRAN for a binary version of &amp;#39;TMB&amp;#39; matching CRAN&amp;#39;s &amp;#39;Matrix&amp;#39; package&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-05-18-estmating-causal-effects-from-aggregated-data_files/figure-html/unnamed-chunk-10-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Now let’s estimate the causal effect of ethnicity on wage using propensity scores. I will use the expanded dataset since I did not get any reasonable results using the argument s.weights in weightit.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;W.out &amp;lt;- weightit(ethnicity ~ education + experience + smsa + region + parttime,
  data = CPS1988_refiexp, method = &amp;quot;ebal&amp;quot;)

model_refiexp &amp;lt;- lm(wage ~ ethnicity, data = CPS1988_refiexp, weights = W.out$weights)

coeftest(model_refiexp, vcov = vcovHC, type = &amp;quot;HC1&amp;quot;)
## 
## t test of coefficients:
## 
##                Estimate Std. Error t value  Pr(&amp;gt;|t|)    
## (Intercept)    616.8706     1.4634 421.541 &amp;lt; 2.2e-16 ***
## ethnicityafam -133.7648     6.1773 -21.654 &amp;lt; 2.2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1

bal.tab(ethnicity ~ education + experience + smsa + region + parttime,
  data = CPS1988_refiexp, estimand = &amp;quot;ATT&amp;quot;, m.threshold = .05)
## Balance Measures
##                     Type Diff.Un      M.Threshold.Un
## education        Contin. -0.2050 Not Balanced, &amp;gt;0.05
## experience       Contin. -0.0567 Not Balanced, &amp;gt;0.05
## smsa_yes          Binary  0.0995 Not Balanced, &amp;gt;0.05
## region_northeast  Binary -0.0784 Not Balanced, &amp;gt;0.05
## region_midwest    Binary -0.0800 Not Balanced, &amp;gt;0.05
## region_south      Binary  0.3059 Not Balanced, &amp;gt;0.05
## region_west       Binary -0.1475 Not Balanced, &amp;gt;0.05
## parttime_yes      Binary -0.0052     Balanced, &amp;lt;0.05
## 
## Balance tally for mean differences
##                     count
## Balanced, &amp;lt;0.05         1
## Not Balanced, &amp;gt;0.05     7
## 
## Variable with the greatest mean difference
##      Variable Diff.Un      M.Threshold.Un
##  region_south  0.3059 Not Balanced, &amp;gt;0.05
## 
## Sample sizes
##      cauc afam
## All 25732 2065

bal.tab(W.out, m.threshold = .05, disp.v.ratio = TRUE)
## Call
##  weightit(formula = ethnicity ~ education + experience + smsa + 
##     region + parttime, data = CPS1988_refiexp, method = &amp;quot;ebal&amp;quot;)
## 
## Balance Measures
##                     Type Diff.Adj     M.Threshold V.Ratio.Adj
## education        Contin.   0.0001 Balanced, &amp;lt;0.05      0.6710
## experience       Contin.   0.0000 Balanced, &amp;lt;0.05      0.8969
## smsa_yes          Binary   0.0000 Balanced, &amp;lt;0.05           .
## region_northeast  Binary   0.0000 Balanced, &amp;lt;0.05           .
## region_midwest    Binary   0.0001 Balanced, &amp;lt;0.05           .
## region_south      Binary  -0.0000 Balanced, &amp;lt;0.05           .
## region_west       Binary  -0.0001 Balanced, &amp;lt;0.05           .
## parttime_yes      Binary  -0.0000 Balanced, &amp;lt;0.05           .
## 
## Balance tally for mean differences
##                     count
## Balanced, &amp;lt;0.05         8
## Not Balanced, &amp;gt;0.05     0
## 
## Variable with the greatest mean difference
##        Variable Diff.Adj     M.Threshold
##  region_midwest   0.0001 Balanced, &amp;lt;0.05
## 
## Effective sample sizes
##               cauc    afam
## Unadjusted 25732.  2065.  
## Adjusted   25650.5 1094.35

plot_summs(model_lm_ethnicity, model_refiexp, scale = TRUE, robust = &amp;quot;HC1&amp;quot;, 
  model.names = c(
    &amp;quot;Original dataset&amp;quot;, 
    &amp;quot;Expanded dataset&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-05-18-estmating-causal-effects-from-aggregated-data_files/figure-html/unnamed-chunk-11-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Let’s compare the coefficients for experience for the linear model based on the original data, aggregated data and the expanded data.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- lm(wage ~ experience, data = CPS1988)

model_refi &amp;lt;- lm(wage ~ experience, data = CPS1988_refi, weights = n)

model_refiexp &amp;lt;- lm(wage ~ experience, data = CPS1988_refiexp)

plot_summs(model, model_refi, model_refiexp, robust = &amp;quot;HC1&amp;quot;,
  model.names = c(
    &amp;quot;Original dataset&amp;quot;, 
    &amp;quot;Reduced dataset using weights&amp;quot;, 
    &amp;quot;Expanded dataset&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-05-18-estmating-causal-effects-from-aggregated-data_files/figure-html/unnamed-chunk-12-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Let’s estimate the causal effect of ethnicity on wage using propensity scores. I will use the expanded dataset since I did not get any reasonable results using the argument s.wights in weightit.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;W.out &amp;lt;- weightit(experience ~ ethnicity + education + smsa + region + parttime,
  data = CPS1988_refiexp, method = &amp;quot;ebal&amp;quot;)

model_refiexp &amp;lt;- lm(wage ~ experience, data = CPS1988_refiexp, weights = W.out$weights)

coeftest(model_refiexp, vcov = vcovHC, type = &amp;quot;HC1&amp;quot;)
## 
## t test of coefficients:
## 
##              Estimate Std. Error t value  Pr(&amp;gt;|t|)    
## (Intercept) 452.45062    2.25958 200.237 &amp;lt; 2.2e-16 ***
## experience    8.60394    0.14098  61.029 &amp;lt; 2.2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1

bal.tab(experience ~ ethnicity + education + smsa + region + parttime,
  data = CPS1988_refiexp, estimand = &amp;quot;ATT&amp;quot;, m.threshold = .05)
## Balance Measures
##                     Type Corr.Un
## ethnicity_afam    Binary -0.0143
## education        Contin. -0.2736
## smsa_yes          Binary -0.0339
## region_northeast  Binary  0.0256
## region_midwest    Binary -0.0156
## region_south      Binary  0.0092
## region_west       Binary -0.0202
## parttime_yes      Binary -0.1072
## 
## Sample sizes
##     Total
## All 27797

bal.tab(W.out, m.threshold = .05, disp.v.ratio = TRUE)
## Call
##  weightit(formula = experience ~ ethnicity + education + smsa + 
##     region + parttime, data = CPS1988_refiexp, method = &amp;quot;ebal&amp;quot;)
## 
## Balance Measures
##                     Type Corr.Adj Diff.Adj     M.Threshold
## ethnicity_afam    Binary       -0       -0 Balanced, &amp;lt;0.05
## education        Contin.       -0       -0 Balanced, &amp;lt;0.05
## smsa_yes          Binary       -0       -0 Balanced, &amp;lt;0.05
## region_northeast  Binary        0        0 Balanced, &amp;lt;0.05
## region_midwest    Binary        0        0 Balanced, &amp;lt;0.05
## region_south      Binary       -0       -0 Balanced, &amp;lt;0.05
## region_west       Binary       -0       -0 Balanced, &amp;lt;0.05
## parttime_yes      Binary        0       -0 Balanced, &amp;lt;0.05
## 
## Balance tally for target mean differences
##                     count
## Balanced, &amp;lt;0.05         8
## Not Balanced, &amp;gt;0.05     0
## 
## Variable with the greatest target mean difference
##   Variable Diff.Adj     M.Threshold
##  education       -0 Balanced, &amp;lt;0.05
## 
## Effective sample sizes
##               Total
## Unadjusted 27797.  
## Adjusted   25618.89

plot_summs(model_lm_experience, model_refiexp, robust = &amp;quot;HC1&amp;quot;,
  model.names = c(
    &amp;quot;Original dataset&amp;quot;, 
    &amp;quot;Expanded dataset&amp;quot;))           &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2021-05-18-estmating-causal-effects-from-aggregated-data_files/figure-html/unnamed-chunk-13-1.png&#34; width=&#34;672&#34; /&gt;&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Per cent who are women in different occupational groups in Sweden, feature importance</title>
      <link>http://mikaellundqvist.rbind.io/2020/05/24/per-cent-who-are-women-in-different-occupational-groups-in-sweden-feature-importance/</link>
      <pubDate>Sun, 24 May 2020 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2020/05/24/per-cent-who-are-women-in-different-occupational-groups-in-sweden-feature-importance/</guid>
      <description>


&lt;p&gt;In a previous post, I analysed the feature importance for the per cent of engineers in Sweden who are women. I found that the size of the region is a feature that is significant for the per cent of engineers in Sweden who are women.
In this post, I will analyse the feature importance of different occupational groups in Sweden. I will use an ensemble of linear models in my analysis.&lt;/p&gt;
&lt;p&gt;Statistics Sweden use NUTS (Nomenclature des Unités Territoriales Statistiques), which is the EU’s hierarchical regional division, to specify the regions.&lt;/p&gt;
&lt;p&gt;Please send suggestions for improvement of the analysis to &lt;a href=&#34;mailto:ranalystatisticssweden@gmail.com&#34; class=&#34;email&#34;&gt;ranalystatisticssweden@gmail.com&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages -------------------------------------------------- tidyverse 1.3.0 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.3.0     v purrr   0.3.4
## v tibble  3.0.0     v dplyr   0.8.5
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.5.0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ----------------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (broom)
library (car)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (caret)    &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: lattice&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;caret&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     lift&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (recipes)  &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;recipes&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:stringr&amp;#39;:
## 
##     fixed&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:stats&amp;#39;:
## 
##     step&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (PerformanceAnalytics)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: xts&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: zoo&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;zoo&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:base&amp;#39;:
## 
##     as.Date, as.Date.numeric&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;xts&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     first, last&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;PerformanceAnalytics&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:graphics&amp;#39;:
## 
##     legend&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (ggpubr)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: magrittr&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;magrittr&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     set_names&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:tidyr&amp;#39;:
## 
##     extract&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (ipred) 
library (iml)
library (SuperLearner)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: nnls&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Super Learner&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Version: 2.0-26&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Package created on 2019-10-27&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (scatterplot3d)

readfile &amp;lt;- function (file1){read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%
  gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = groupsize) %&amp;gt;%
  drop_na() %&amp;gt;%
  mutate (year_n = parse_number (year))
}

perc_women &amp;lt;- function(x){  
  ifelse (length(x) == 2, x[2] / (x[1] + x[2]), NA)
} 

nuts &amp;lt;- read.csv(&amp;quot;nuts.csv&amp;quot;) %&amp;gt;%
  mutate(NUTS2_sh = substr(NUTS2, 3, 4))

nuts %&amp;gt;% 
  distinct (NUTS2_en) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Nomenclature des Unités Territoriales Statistiques (NUTS)&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-1&#34;&gt;Table 1: &lt;/span&gt;Nomenclature des Unités Territoriales Statistiques (NUTS)&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;NUTS2_en&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE11 Stockholm&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE12 East-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE21 Småland and islands&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE22 South Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE23 West Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE31 North-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE32 Central Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE33 Upper Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;SL.lm.caret &amp;lt;- function(..., method = &amp;quot;lm&amp;quot;, tuneLength = 3, obsWeights = obsWeights, trControl = caret::trainControl(method = &amp;quot;cv&amp;quot;, number = 10, verboseIter = FALSE)){
    suppressWarnings(SL.caret(..., obsWeights = obsWeights, method = method, tuneLength = tuneLength, trControl = trControl))
}

SL.lmStepAIC.caret &amp;lt;- function(..., method = &amp;quot;lmStepAIC&amp;quot;, tuneLength = 3, obsWeights = obsWeights, trControl = caret::trainControl(method = &amp;quot;cv&amp;quot;, number = 10, verboseIter = FALSE)){
    suppressWarnings(SL.caret(..., obsWeights = obsWeights, method = method, tuneLength = tuneLength, trControl = trControl))
}  

SL.bayesglm.caret &amp;lt;- function(..., method = &amp;quot;bayesglm&amp;quot;, tuneLength = 3, obsWeights = obsWeights, trControl = caret::trainControl(method = &amp;quot;cv&amp;quot;, number = 10, verboseIter = FALSE)){
    suppressWarnings(SL.caret(..., obsWeights = obsWeights, method = method, tuneLength = tuneLength, trControl = trControl))
}  

SL.rlm.caret &amp;lt;- function(..., method = &amp;quot;rlm&amp;quot;, tuneLength = 3, obsWeights = obsWeights, trControl = caret::trainControl(method = &amp;quot;cv&amp;quot;, number = 10, verboseIter = FALSE)){
    suppressWarnings(SL.caret(..., obsWeights = obsWeights, method = method, tuneLength = tuneLength, trControl = trControl))
}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data tables are downloaded from Statistics Sweden. They are saved as a comma-delimited file without heading, UF0506A1.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The tables:&lt;/p&gt;
&lt;p&gt;UF0506A1_1.csv: Population 16-74 years of age by region, highest level of education, age and sex. Year 1985 - 2018 NUTS 2 level 2008- 10 year intervals (16-74)&lt;/p&gt;
&lt;p&gt;000000CG_1: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2018 Monthly salary All sectors.&lt;/p&gt;
&lt;p&gt;000000CD_1.csv: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2018 Number of employees All sectors.&lt;/p&gt;
&lt;p&gt;The data is aggregated, the size of each group is in the column groupsize.&lt;/p&gt;
&lt;p&gt;I have also included some calculated predictors from the original data.&lt;/p&gt;
&lt;p&gt;perc_women: The percentage of women within each group defined by edulevel, region and year&lt;/p&gt;
&lt;p&gt;perc_women_region: The percentage of women within each group defined by year and region&lt;/p&gt;
&lt;p&gt;regioneduyears: The average number of education years per capita within each group defined by year and region&lt;/p&gt;
&lt;p&gt;eduquotient: The quotient between regioneduyears for men and women&lt;/p&gt;
&lt;p&gt;salaryquotient: The quotient between salary for men and women within each group defined by year and region&lt;/p&gt;
&lt;p&gt;perc_women_eng_region: The percentage of women who are engineers within each group defined by year and region&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;numedulevel &amp;lt;- read.csv(&amp;quot;edulevel_1.csv&amp;quot;) 

numedulevel[, 2] &amp;lt;- data.frame(c(8, 9, 10, 12, 13, 15, 22, NA))

tb &amp;lt;- readfile(&amp;quot;000000CG_1.csv&amp;quot;) 
tb &amp;lt;- readfile(&amp;quot;000000CD_1.csv&amp;quot;) %&amp;gt;% 
  left_join(tb, by = c(&amp;quot;region&amp;quot;, &amp;quot;year&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;,&amp;quot;occuptional  (SSYK 2012)&amp;quot;)) 

tb &amp;lt;- readfile(&amp;quot;UF0506A1_1.csv&amp;quot;) %&amp;gt;%  
  right_join(tb, by = c(&amp;quot;region&amp;quot;, &amp;quot;year&amp;quot;, &amp;quot;sex&amp;quot;)) %&amp;gt;%
  right_join(numedulevel, by = c(&amp;quot;level of education&amp;quot; = &amp;quot;level.of.education&amp;quot;)) %&amp;gt;%
  filter(!is.na(eduyears)) %&amp;gt;%  
  mutate(edulevel = `level of education`) %&amp;gt;%
  group_by(edulevel, region, year, sex, `occuptional  (SSYK 2012)`) %&amp;gt;%
  mutate(groupsize_all_ages = sum(groupsize)) %&amp;gt;%  
  group_by(edulevel, region, year, `occuptional  (SSYK 2012)`) %&amp;gt;% 
  mutate (perc_women = perc_women (groupsize_all_ages[1:2])) %&amp;gt;% 
  mutate (suming = sum(groupsize.x)) %&amp;gt;%
  mutate (salary = (groupsize.y[2] * groupsize.x[2] + groupsize.y[1] * groupsize.x[1])/(groupsize.x[2] + groupsize.x[1])) %&amp;gt;%
  group_by (sex, year, region, `occuptional  (SSYK 2012)`) %&amp;gt;%
  mutate(regioneduyears_sex = sum(groupsize * eduyears) / sum(groupsize)) %&amp;gt;%
  mutate(regiongroupsize = sum(groupsize)) %&amp;gt;% 
  mutate(suming_sex = groupsize.x) %&amp;gt;%
  group_by(region, year, `occuptional  (SSYK 2012)`) %&amp;gt;%
  mutate (sum_pop = sum(groupsize)) %&amp;gt;%
  mutate (regioneduyears = sum(groupsize * eduyears) / sum(groupsize)) %&amp;gt;%
  mutate (perc_women_region = perc_women (regiongroupsize[1:2])) %&amp;gt;% 
  mutate (eduquotient = regioneduyears_sex[2] / regioneduyears_sex[1]) %&amp;gt;% 
  mutate (salary_sex = groupsize.y) %&amp;gt;%
  mutate (salaryquotient = salary_sex[2] / salary_sex[1]) %&amp;gt;%   
  mutate (perc_women_eng_region = perc_women(suming_sex[1:2])) %&amp;gt;%  
  left_join(nuts %&amp;gt;% distinct (NUTS2_en, NUTS2_sh), by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) %&amp;gt;%
  drop_na()

summary(tb)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##     region              age            level of education     sex           
##  Length:29050       Length:29050       Length:29050       Length:29050      
##  Class :character   Class :character   Class :character   Class :character  
##  Mode  :character   Mode  :character   Mode  :character   Mode  :character  
##                                                                             
##                                                                             
##                                                                             
##      year             groupsize          year_n        sector         
##  Length:29050       Min.   :   405   Min.   :2014   Length:29050      
##  Class :character   1st Qu.: 25412   1st Qu.:2015   Class :character  
##  Mode  :character   Median : 61291   Median :2016   Mode  :character  
##                     Mean   : 71345   Mean   :2016                     
##                     3rd Qu.:113524   3rd Qu.:2017                     
##                     Max.   :271889   Max.   :2018                     
##  occuptional  (SSYK 2012)  groupsize.x       year_n.x     groupsize.y    
##  Length:29050             Min.   :  100   Min.   :2014   Min.   : 20200  
##  Class :character         1st Qu.:  490   1st Qu.:2015   1st Qu.: 28900  
##  Mode  :character         Median : 1300   Median :2016   Median : 33900  
##                           Mean   : 3258   Mean   :2016   Mean   : 37066  
##                           3rd Qu.: 3400   3rd Qu.:2017   3rd Qu.: 42100  
##                           Max.   :45000   Max.   :2018   Max.   :133600  
##     year_n.y       eduyears       edulevel         groupsize_all_ages
##  Min.   :2014   Min.   : 8.00   Length:29050       Min.   :   405    
##  1st Qu.:2015   1st Qu.: 9.00   Class :character   1st Qu.: 25412    
##  Median :2016   Median :12.00   Mode  :character   Median : 61291    
##  Mean   :2016   Mean   :12.71                      Mean   : 71345    
##  3rd Qu.:2017   3rd Qu.:15.00                      3rd Qu.:113524    
##  Max.   :2018   Max.   :22.00                      Max.   :271889    
##    perc_women         suming          salary       regioneduyears_sex
##  Min.   :0.3575   Min.   :  240   Min.   : 20661   Min.   :11.18     
##  1st Qu.:0.4343   1st Qu.: 1330   1st Qu.: 29046   1st Qu.:11.63     
##  Median :0.4655   Median : 3100   Median : 34041   Median :11.78     
##  Mean   :0.4775   Mean   : 6515   Mean   : 37105   Mean   :11.83     
##  3rd Qu.:0.5132   3rd Qu.: 7400   3rd Qu.: 42068   3rd Qu.:12.09     
##  Max.   :0.6423   Max.   :60000   Max.   :113976   Max.   :12.55     
##  regiongroupsize    suming_sex       sum_pop        regioneduyears 
##  Min.   :128262   Min.   :  100   Min.   : 262870   Min.   :11.39  
##  1st Qu.:292864   1st Qu.:  490   1st Qu.: 596546   1st Qu.:11.56  
##  Median :528643   Median : 1300   Median :1057419   Median :11.82  
##  Mean   :499413   Mean   : 3258   Mean   : 998826   Mean   :11.83  
##  3rd Qu.:708813   3rd Qu.: 3400   3rd Qu.:1417931   3rd Qu.:11.93  
##  Max.   :827940   Max.   :45000   Max.   :1655215   Max.   :12.41  
##  perc_women_region  eduquotient      salary_sex     salaryquotient  
##  Min.   :0.4831    Min.   :1.019   Min.   : 20200   Min.   :0.6423  
##  1st Qu.:0.4890    1st Qu.:1.027   1st Qu.: 28900   1st Qu.:0.9144  
##  Median :0.4937    Median :1.032   Median : 33900   Median :0.9556  
##  Mean   :0.4931    Mean   :1.033   Mean   : 37066   Mean   :0.9502  
##  3rd Qu.:0.4971    3rd Qu.:1.040   3rd Qu.: 42100   3rd Qu.:0.9941  
##  Max.   :0.5014    Max.   :1.047   Max.   :133600   Max.   :1.3090  
##  perc_women_eng_region   NUTS2_sh        
##  Min.   :0.01659       Length:29050      
##  1st Qu.:0.30876       Class :character  
##  Median :0.56000       Mode  :character  
##  Mean   :0.52565                         
##  3rd Qu.:0.72414                         
##  Max.   :0.94527&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbtemp &amp;lt;- ungroup(tb) %&amp;gt;% dplyr::select(salary, suming, year_n, sum_pop, regioneduyears, perc_women_region, salaryquotient, eduquotient, perc_women_eng_region, `occuptional  (SSYK 2012)`)

tb_unique &amp;lt;- unique(tbtemp)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I will use SuperLearner to train the ensemble consisting of four linear models without interactions. The four models are Linear Regression (lm), Linear Regression with Stepwise Selection (lmStepAIC), Bayesian Generalized Linear Model (bayesglm) and Robust Linear Model (rlm).&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary_table = vector()
cor_table = vector()
sp_table &amp;lt;- vector()
rmse_table &amp;lt;- vector()

for (i in unique(tb_unique$`occuptional  (SSYK 2012)`)){
  temp &amp;lt;- filter(tb_unique, `occuptional  (SSYK 2012)` == i)
  if (dim(temp)[1] &amp;gt; 20){
     temp_weights = temp$suming
     temp &amp;lt;- dplyr::select(temp, - c(`occuptional  (SSYK 2012)`, suming))
     blueprint &amp;lt;- recipe(perc_women_eng_region ~ ., data = temp) %&amp;gt;%
       step_integer(matches(&amp;quot;Qual|Cond|QC|Qu&amp;quot;)) %&amp;gt;%
       step_center(all_numeric(), -all_outcomes()) %&amp;gt;%
       step_scale(all_numeric(), -all_outcomes()) %&amp;gt;%
       step_dummy(all_nominal(), -all_outcomes(), one_hot = TRUE)
     prepare &amp;lt;- prep(blueprint, training = temp)
     temp &amp;lt;- bake(prepare, new_data = temp)
  
     invisible(capture.output(model &amp;lt;- SuperLearner(
        temp$perc_women_eng_region,
        data.frame(dplyr::select(temp, -c(perc_women_eng_region))),
        family = gaussian(),
        verbose = FALSE,
        obsWeights = temp_weights,
        SL.library = list(&amp;quot;SL.lm.caret&amp;quot;, &amp;quot;SL.lmStepAIC.caret&amp;quot;, &amp;quot;SL.bayesglm.caret&amp;quot;, &amp;quot;SL.rlm.caret&amp;quot;))))

     pred &amp;lt;- function(object, newdata){
       predict(model, newdata=newdata, onlySL = TRUE)$pred
     }  
    
     predictor &amp;lt;- Predictor$new(model, 
        data = dplyr::select(temp, -perc_women_eng_region), 
        y = temp$perc_women_eng_region,
        predict.fun = pred)   
   
     imp &amp;lt;- FeatureImp$new(predictor, loss = &amp;quot;mae&amp;quot;, n.repetitions = 30)
    
     summary_table &amp;lt;- rbind(summary_table, mutate(tibble(.rows = 7), importance = imp$results$importance, feature = imp$results$feature, importance.05 = imp$results$importance.05, ssyk = i))
    
     cor_table &amp;lt;- rbind(cor_table, mutate(tibble(.rows = 7), feature = colnames(dplyr::select(temp, -c(perc_women_eng_region))), cor = cor(dplyr::select(temp, -c(perc_women_eng_region)), temp$perc_women_eng_region), ssyk = i))
    
     sp_table &amp;lt;- rbind(sp_table, mutate(tibble(.rows = 4), coef = model$coef, model = names(model$coef),  ssyk = i))
    
     prs &amp;lt;- postResample(pred = predict(model)$pred, obs = temp$perc_women_eng_region)
    
     rmse_table &amp;lt;- rbind(rmse_table, mutate(tibble(.rows = 1), RMSE = prs[1], Rsquared = prs[2], MAE = prs[3], ssyk = i))    
  }
}&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Registered S3 methods overwritten by &amp;#39;lme4&amp;#39;:
##   method                          from
##   cooks.distance.influence.merMod car 
##   influence.merMod                car 
##   dfbeta.influence.merMod         car 
##   dfbetas.influence.merMod        car&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The table below shows the feature values for the different occupation groups and if there is a single important feature (diff1) or if there are two important features (diff2) for the occupational group. The Rsquared value shows if the model for the occupational group does have a good fit.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary_table %&amp;gt;% 
  group_by(ssyk) %&amp;gt;% 
  group_by(ssyk) %&amp;gt;% 
  dplyr::mutate(diff1 = importance.05[1] / importance[2]) %&amp;gt;% 
  dplyr::mutate(diff2 = importance.05[2] / importance[3]) %&amp;gt;% 
  left_join(cor_table, by = c(&amp;quot;ssyk&amp;quot;, &amp;quot;feature&amp;quot;)) %&amp;gt;% 
  left_join(sp_table %&amp;gt;% spread(model, coef), by=c(&amp;quot;ssyk&amp;quot;)) %&amp;gt;% 
  left_join(rmse_table, by=c(&amp;quot;ssyk&amp;quot;)) %&amp;gt;% 
  dplyr::select(ssyk, feature, importance, importance.05, diff1, diff2, Rsquared) %&amp;gt;%
  knitr::kable( 
     booktabs = TRUE,
     caption = &amp;#39;Feature values for different occupation groups&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-4&#34;&gt;Table 2: &lt;/span&gt;Feature values for different occupation groups&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;feature&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;importance&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;importance.05&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;diff1&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;diff2&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Rsquared&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.8170179&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2624044&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9992710&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9746650&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5296568&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2647844&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6462447&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9992710&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9746650&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5296568&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7150299&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3345443&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9992710&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9746650&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5296568&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5260824&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1015060&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9992710&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9746650&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5296568&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2063518&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0434914&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9992710&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9746650&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5296568&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1813452&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0858792&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9992710&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9746650&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5296568&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0740710&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0155535&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9992710&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9746650&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5296568&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;141 Primary and secondary schools and adult education managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7494050&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2970027&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3327022&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9503406&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6950328&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;141 Primary and secondary schools and adult education managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7235678&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4984603&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3327022&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9503406&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6950328&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;141 Primary and secondary schools and adult education managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5767613&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4698417&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3327022&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9503406&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6950328&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;141 Primary and secondary schools and adult education managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3327022&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9503406&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6950328&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;141 Primary and secondary schools and adult education managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3327022&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9503406&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6950328&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;141 Primary and secondary schools and adult education managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3327022&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9503406&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6950328&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;141 Primary and secondary schools and adult education managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3327022&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9503406&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6950328&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;151 Health care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4538279&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9290583&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8094247&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9296316&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5799653&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;151 Health care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3832462&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1362284&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8094247&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9296316&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5799653&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;151 Health care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2979301&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9260029&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8094247&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9296316&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5799653&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;151 Health care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2848362&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7029592&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8094247&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9296316&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5799653&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;151 Health care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5379944&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3579666&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8094247&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9296316&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5799653&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;151 Health care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3662380&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1596424&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8094247&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9296316&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5799653&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;151 Health care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0388730&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0045578&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8094247&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9296316&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5799653&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;153 Elderly care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.1559615&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.4775973&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9123375&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4669946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8177027&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;153 Elderly care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.1000012&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.9284122&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9123375&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4669946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8177027&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;153 Elderly care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.0411955&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4263668&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9123375&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4669946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8177027&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;153 Elderly care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5390920&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2329029&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9123375&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4669946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8177027&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;153 Elderly care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9123375&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4669946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8177027&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;153 Elderly care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9123375&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4669946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8177027&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;153 Elderly care managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9123375&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4669946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8177027&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0725550&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5099215&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8325266&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9953769&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7325679&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0148243&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6352584&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8325266&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9953769&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7325679&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6474981&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2659272&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8325266&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9953769&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7325679&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1941589&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9031203&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8325266&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9953769&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7325679&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7175697&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4021163&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8325266&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9953769&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7325679&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5834901&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3638281&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8325266&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9953769&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7325679&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8325266&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9953769&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7325679&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;211 Physicists and chemists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1793564&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4217960&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8168496&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4762352&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7777887&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;211 Physicists and chemists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9648004&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4885379&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8168496&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4762352&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7777887&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;211 Physicists and chemists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6857326&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4429244&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8168496&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4762352&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7777887&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;211 Physicists and chemists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6402704&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3256462&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8168496&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4762352&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7777887&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;211 Physicists and chemists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5988744&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2158115&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8168496&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4762352&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7777887&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;211 Physicists and chemists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5727207&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3608653&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8168496&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4762352&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7777887&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;211 Physicists and chemists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3311748&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0615814&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8168496&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4762352&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7777887&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2085990&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5852735&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0619019&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1085082&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8501315&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4345690&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0768022&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0619019&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1085082&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8501315&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8735109&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5486497&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0619019&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1085082&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8501315&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0619019&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1085082&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8501315&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0619019&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1085082&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8501315&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0619019&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1085082&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8501315&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0619019&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1085082&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8501315&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1998968&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0271753&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9319265&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0204712&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2072889&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1022064&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0204712&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9319265&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0204712&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2072889&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9319265&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0204712&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2072889&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9319265&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0204712&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2072889&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9319265&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0204712&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2072889&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9319265&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0204712&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2072889&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9319265&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0204712&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2072889&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;221 Medical doctors&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2538623&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7126722&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6832188&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0066594&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7935628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;221 Medical doctors&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6115981&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4986615&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6832188&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0066594&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7935628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;221 Medical doctors&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4887473&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3049164&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6832188&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0066594&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7935628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;221 Medical doctors&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0890646&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0519492&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6832188&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0066594&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7935628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;221 Medical doctors&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0136252&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9725422&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6832188&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0066594&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7935628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;221 Medical doctors&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0079123&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9912346&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6832188&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0066594&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7935628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;221 Medical doctors&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9691336&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9264889&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6832188&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0066594&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7935628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3570281&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2297860&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1599907&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9741302&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2680452&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0601688&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9943949&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1599907&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9741302&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2680452&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0208028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9745776&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1599907&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9741302&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2680452&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0058709&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9866984&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1599907&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9741302&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2680452&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0015554&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9908744&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1599907&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9741302&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2680452&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9999898&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9996937&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1599907&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9741302&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2680452&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9991395&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9967976&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1599907&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9741302&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2680452&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;223 Nursing professionals (cont.)&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7410583&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4227133&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8555381&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9923183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6124752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;223 Nursing professionals (cont.)&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6629455&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4414067&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8555381&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9923183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6124752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;223 Nursing professionals (cont.)&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4525648&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3870921&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8555381&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9923183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6124752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;223 Nursing professionals (cont.)&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2526913&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1340334&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8555381&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9923183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6124752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;223 Nursing professionals (cont.)&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1251733&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0377315&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8555381&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9923183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6124752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;223 Nursing professionals (cont.)&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0772452&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9979456&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8555381&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9923183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6124752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;223 Nursing professionals (cont.)&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0064257&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9699734&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8555381&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9923183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6124752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;227 Naprapaths, physiotherapists, occupational therapists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3148421&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8516422&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2860370&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4787861&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5424810&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;227 Naprapaths, physiotherapists, occupational therapists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2173875&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9400838&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2860370&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4787861&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5424810&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;227 Naprapaths, physiotherapists, occupational therapists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3119435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1242123&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2860370&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4787861&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5424810&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;227 Naprapaths, physiotherapists, occupational therapists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3023137&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1403014&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2860370&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4787861&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5424810&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;227 Naprapaths, physiotherapists, occupational therapists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0993687&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9919804&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2860370&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4787861&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5424810&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;227 Naprapaths, physiotherapists, occupational therapists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0570268&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9703933&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2860370&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4787861&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5424810&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;227 Naprapaths, physiotherapists, occupational therapists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9923096&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9587380&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2860370&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4787861&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5424810&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.9035680&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.1896016&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0668866&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8353526&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9357939&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.8015553&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.8319783&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0668866&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8353526&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9357939&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.7843576&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.9118836&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0668866&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8353526&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9357939&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.2107594&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2672779&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0668866&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8353526&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9357939&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.6947346&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1285856&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0668866&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8353526&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9357939&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8014376&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4699874&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0668866&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8353526&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9357939&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7814310&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4686631&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0668866&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8353526&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9357939&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;232 Vocational education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.8995689&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.5458286&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8486146&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9931816&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9152722&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;232 Vocational education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.3567644&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.4992796&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8486146&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9931816&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9152722&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;232 Vocational education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.5301682&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.0344389&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8486146&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9931816&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9152722&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;232 Vocational education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5787996&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2283684&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8486146&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9931816&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9152722&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;232 Vocational education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9948566&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7227708&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8486146&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9931816&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9152722&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;232 Vocational education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7484881&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4137498&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8486146&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9931816&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9152722&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;232 Vocational education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1795101&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0464747&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8486146&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9931816&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9152722&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7519346&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5963138&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9861296&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8798435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2711955&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6187667&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3647524&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9861296&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8798435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2711955&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5511308&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3237125&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9861296&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8798435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2711955&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4901622&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3515191&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9861296&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8798435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2711955&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1340296&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0608823&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9861296&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8798435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2711955&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1115054&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0431384&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9861296&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8798435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2711955&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0011883&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9739857&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9861296&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8798435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2711955&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6651473&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3148568&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0820339&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9396348&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7919968&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1393570&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8980735&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0820339&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9396348&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7919968&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0200119&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7615651&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0820339&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9396348&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7919968&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9879886&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7570799&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0820339&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9396348&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7919968&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5711047&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3697916&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0820339&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9396348&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7919968&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5376109&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3834061&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0820339&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9396348&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7919968&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0541899&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0163654&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0820339&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9396348&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7919968&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4752946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1173913&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1572182&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0071504&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7038429&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6938664&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2359223&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1572182&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0071504&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7038429&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2200482&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9098982&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1572182&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0071504&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7038429&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8916217&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6391206&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1572182&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0071504&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7038429&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3369762&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1453482&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1572182&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0071504&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7038429&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0086567&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9599072&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1572182&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0071504&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7038429&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0045400&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9954951&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1572182&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0071504&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7038429&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7081423&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2326348&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8460985&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0919083&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7445476&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6387410&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1737040&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8460985&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0919083&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7445476&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9907387&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5693998&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8460985&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0919083&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7445476&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4932763&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3223917&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8460985&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0919083&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7445476&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3933309&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2289757&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8460985&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0919083&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7445476&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0962361&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0154278&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8460985&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0919083&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7445476&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9995289&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9973319&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8460985&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0919083&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7445476&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.1453246&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4636361&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4988404&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0425932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6524219&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3108772&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9737256&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4988404&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0425932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6524219&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8930927&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6469206&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4988404&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0425932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6524219&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8639424&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6551601&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4988404&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0425932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6524219&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3041251&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2098787&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4988404&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0425932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6524219&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0982455&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0016594&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4988404&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0425932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6524219&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0559543&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9813767&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4988404&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0425932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6524219&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.9569245&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.9496983&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1206542&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9392641&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6445752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.5244578&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8349264&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1206542&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9392641&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6445752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0182422&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2538137&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1206542&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9392641&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6445752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6524352&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9742342&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1206542&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9392641&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6445752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7174528&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4543276&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1206542&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9392641&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6445752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4552259&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2338961&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1206542&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9392641&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6445752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3152657&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1626737&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1206542&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9392641&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6445752&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7358787&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5568847&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9528479&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1920886&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4818438&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6834131&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1391217&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9528479&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1920886&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4818438&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7944318&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5618951&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9528479&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1920886&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4818438&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0100090&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0001357&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9528479&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1920886&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4818438&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0047852&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0012175&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9528479&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1920886&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4818438&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9996955&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9963383&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9528479&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1920886&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4818438&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9930233&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9888326&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9528479&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1920886&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4818438&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.7549424&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.8162165&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8451578&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1021776&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7483456&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.5153896&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1719595&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8451578&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1021776&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7483456&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8779023&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5745840&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8451578&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1021776&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7483456&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6379752&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2504586&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8451578&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1021776&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7483456&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5557708&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1184918&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8451578&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1021776&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7483456&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0561141&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7014956&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8451578&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1021776&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7483456&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4548882&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2819586&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8451578&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1021776&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7483456&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;262 Museum curators and librarians and related professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3548098&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4968169&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7595766&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8090532&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7594220&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;262 Museum curators and librarians and related professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2871165&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5885880&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7595766&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8090532&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7594220&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;262 Museum curators and librarians and related professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1995277&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8162677&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7595766&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8090532&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7594220&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;262 Museum curators and librarians and related professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9883411&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6716447&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7595766&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8090532&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7594220&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;262 Museum curators and librarians and related professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4723407&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3110794&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7595766&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8090532&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7594220&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;262 Museum curators and librarians and related professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1910891&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1044098&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7595766&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8090532&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7594220&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;262 Museum curators and librarians and related professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0596886&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9983240&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7595766&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8090532&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7594220&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;266 Social work and counselling professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0699805&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8890549&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3195137&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9204363&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6423319&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;266 Social work and counselling professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4316296&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1948843&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3195137&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9204363&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6423319&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;266 Social work and counselling professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2981716&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0993452&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3195137&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9204363&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6423319&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;266 Social work and counselling professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2974744&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1788171&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3195137&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9204363&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6423319&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;266 Social work and counselling professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0015134&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9980390&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3195137&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9204363&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6423319&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;266 Social work and counselling professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0004463&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9980253&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3195137&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9204363&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6423319&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;266 Social work and counselling professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0002662&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9921359&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3195137&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9204363&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6423319&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8239037&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3308712&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2124932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1060730&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6129610&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9223788&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6234583&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2124932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1060730&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6129610&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4677678&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2914193&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2124932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1060730&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6129610&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0353719&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9889612&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2124932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1060730&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6129610&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0236570&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9963231&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2124932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1060730&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6129610&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0233421&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9919135&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2124932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1060730&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6129610&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0116614&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9855591&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2124932&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1060730&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6129610&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.7511968&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2140254&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3911100&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346430&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6495278&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3104035&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9925122&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3911100&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346430&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6495278&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1318431&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8521291&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3911100&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346430&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6495278&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4214195&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2916594&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3911100&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346430&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6495278&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3864519&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1803667&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3911100&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346430&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6495278&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0725493&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0231476&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3911100&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346430&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6495278&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0156559&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9924611&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3911100&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346430&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6495278&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.8010119&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0275822&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5742205&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3483567&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7642041&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9232262&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7322825&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5742205&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3483567&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7642041&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2847360&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1413503&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5742205&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3483567&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7642041&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2196519&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0707646&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5742205&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3483567&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7642041&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5742205&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3483567&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7642041&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5742205&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3483567&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7642041&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5742205&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3483567&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7642041&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1945994&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5604487&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4159454&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0419269&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4301719&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8082963&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4856024&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4159454&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0419269&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4301719&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4258221&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1847659&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4159454&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0419269&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4301719&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1998397&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0205232&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4159454&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0419269&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4301719&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0691040&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0183061&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4159454&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0419269&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4301719&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0376611&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9739336&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4159454&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0419269&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4301719&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0005005&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9973068&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4159454&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0419269&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4301719&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.1013441&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4857810&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2177057&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1768387&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7469849&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8625809&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6778006&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2177057&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1768387&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7469849&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2754185&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9606631&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2177057&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1768387&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7469849&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2177057&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1768387&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7469849&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2177057&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1768387&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7469849&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2177057&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1768387&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7469849&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2177057&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1768387&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7469849&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;336 Police officers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.6149010&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.4101856&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3781681&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9403836&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6720628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;336 Police officers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.9256356&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1250520&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3781681&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9403836&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6720628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;336 Police officers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3231673&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8227248&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3781681&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9403836&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6720628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;336 Police officers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2344097&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8043712&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3781681&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9403836&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6720628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;336 Police officers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0402484&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7876511&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3781681&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9403836&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6720628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;336 Police officers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8543180&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6559515&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3781681&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9403836&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6720628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;336 Police officers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1808364&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0825015&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3781681&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9403836&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6720628&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1872367&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7804951&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8268219&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9425405&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5768773&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1534202&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8012277&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8268219&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9425405&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5768773&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9110349&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5828173&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8268219&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9425405&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5768773&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3145981&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1258907&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8268219&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9425405&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5768773&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1366153&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0368470&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8268219&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9425405&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5768773&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1011724&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0330416&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8268219&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9425405&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5768773&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0150045&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9988372&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8268219&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9425405&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5768773&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2556210&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0199751&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1114007&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2922028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5754468&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8175038&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6419553&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1114007&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2922028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5754468&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2706638&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1570272&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1114007&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2922028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5754468&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1114007&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2922028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5754468&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1114007&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2922028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5754468&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1114007&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2922028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5754468&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0000000&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1114007&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2922028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5754468&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.6360229&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.5777322&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6115974&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8774912&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8998367&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4609960&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8222051&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6115974&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8774912&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8998367&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2162205&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7855818&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6115974&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8774912&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8998367&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1602674&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8489474&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6115974&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8774912&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8998367&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2635892&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1422356&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6115974&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8774912&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8998367&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0352898&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9386980&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6115974&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8774912&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8998367&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9978554&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9931738&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6115974&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8774912&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8998367&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.8197354&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.7731043&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3421333&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1939419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9165128&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.5563562&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0151663&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3421333&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1939419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9165128&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5253877&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3079860&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3421333&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1939419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9165128&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6773638&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3046246&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3421333&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1939419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9165128&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6134876&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4965381&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3421333&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1939419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9165128&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3948836&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1740007&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3421333&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1939419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9165128&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3923600&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1347137&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3421333&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1939419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9165128&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.5389050&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1870397&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9663243&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9694028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6206695&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2981057&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6457771&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9663243&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9694028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6206695&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7292856&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3165318&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9663243&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9694028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6206695&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2153663&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9380926&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9663243&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9694028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6206695&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1263593&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8101511&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9663243&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9694028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6206695&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5857830&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4075435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9663243&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9694028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6206695&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0341103&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9911844&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9663243&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9694028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6206695&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.7774908&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.1261786&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0229660&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8534003&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6723747&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.0335443&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0521977&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0229660&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8534003&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6723747&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.5765135&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9675823&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0229660&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8534003&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6723747&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0845999&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6709589&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0229660&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8534003&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6723747&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8146068&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5619745&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0229660&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8534003&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6723747&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0411189&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9862411&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0229660&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8534003&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6723747&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0341765&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9505941&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0229660&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8534003&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6723747&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7464002&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2523244&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1644473&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8815180&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7418281&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9342434&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6159634&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1644473&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8815180&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7418281&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8331599&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5608802&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1644473&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8815180&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7418281&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6450591&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3684304&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1644473&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8815180&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7418281&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2975906&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1453299&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1644473&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8815180&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7418281&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0911504&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0023219&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1644473&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8815180&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7418281&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0074452&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9471405&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1644473&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8815180&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7418281&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;134 Architectural and engineering managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.6628692&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.5853307&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8201284&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9151922&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;134 Architectural and engineering managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.9755676&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.7127798&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8201284&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9151922&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;134 Architectural and engineering managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.7463923&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.7283129&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8201284&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9151922&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;134 Architectural and engineering managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1729423&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7202449&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8201284&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9151922&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;134 Architectural and engineering managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7104284&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4330406&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8201284&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9151922&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;134 Architectural and engineering managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5720877&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3353975&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8201284&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9151922&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;134 Architectural and engineering managers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3342337&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0743796&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9346946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8201284&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9151922&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7792282&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4396571&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3557086&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9362958&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4082033&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7995439&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5614282&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3557086&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9362958&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4082033&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6676655&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4757725&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3557086&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9362958&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4082033&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6228142&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3713812&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3557086&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9362958&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4082033&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2073206&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1181762&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3557086&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9362958&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4082033&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1558014&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0202584&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3557086&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9362958&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4082033&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0268559&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9480420&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3557086&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9362958&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4082033&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3485720&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9425995&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9224562&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3928600&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2801627&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1058989&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8259434&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9224562&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3928600&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2801627&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3109310&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1486190&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9224562&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3928600&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2801627&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1923807&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0975135&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9224562&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3928600&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2801627&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1053954&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9764972&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9224562&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3928600&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2801627&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0054393&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9660905&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9224562&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3928600&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2801627&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9995223&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9843242&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9224562&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3928600&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2801627&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.3245183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.2675746&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9035879&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9786471&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7755035&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2418584&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8267779&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9035879&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9786471&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7755035&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8666360&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5362588&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9035879&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9786471&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7755035&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6103759&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3880391&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9035879&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9786471&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7755035&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4745504&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2612910&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9035879&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9786471&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7755035&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1201795&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9753529&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9035879&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9786471&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7755035&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1088593&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9673804&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9035879&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9786471&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7755035&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2875316&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9727938&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8746626&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0323371&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4740983&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2554913&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9691707&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8746626&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0323371&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4740983&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9074879&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6568279&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8746626&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0323371&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4740983&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7777613&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5135123&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8746626&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0323371&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4740983&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6700858&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5224323&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8746626&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0323371&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4740983&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6139928&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4242386&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8746626&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0323371&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4740983&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0492472&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9970015&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8746626&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0323371&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4740983&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0817719&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7942830&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1691890&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8777738&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4932349&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5346389&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2918349&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1691890&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8777738&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4932349&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4717173&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3207021&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1691890&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8777738&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4932349&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0716159&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9923244&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1691890&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8777738&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4932349&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0646529&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0173561&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1691890&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8777738&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4932349&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0537050&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9954603&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1691890&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8777738&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4932349&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9959705&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9677651&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1691890&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8777738&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4932349&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;821 Assemblers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;regioneduyears&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.1386847&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12.3171157&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3260624&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8326956&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8026313&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;821 Assemblers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sum_pop&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.2884888&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.7454161&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3260624&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8326956&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8026313&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;821 Assemblers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;perc_women_region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.1006984&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.2366514&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3260624&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8326956&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8026313&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;821 Assemblers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.1637791&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.0079990&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3260624&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8326956&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8026313&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;821 Assemblers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salaryquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5702498&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3980286&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3260624&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8326956&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8026313&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;821 Assemblers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;salary&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3401459&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1613060&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3260624&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8326956&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8026313&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;821 Assemblers&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;eduquotient&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2776958&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0033735&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3260624&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8326956&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8026313&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The sum of the per cent that the model was used by the SuperLearner analysing the different occupational groups.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;sp_table %&amp;gt;%
  ggplot (aes(coef, model)) +  
    geom_col ()  &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-5&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-24-per-cent-who-are-women-in-different-occupational-groups-in-sweden-feature-importance_files/figure-html/unnamed-chunk-5-1.png&#34; alt=&#34;The sum of the per cent that the model was used by the SuperLearner&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: The sum of the per cent that the model was used by the SuperLearner
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;The sum of the strongest feature for every occupational group.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary_table %&amp;gt;% 
  arrange(desc(importance)) %&amp;gt;% 
  group_by(ssyk) %&amp;gt;% 
  slice(1) %&amp;gt;%
  ggplot (aes(importance, feature)) +  
    geom_col () &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-6&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-24-per-cent-who-are-women-in-different-occupational-groups-in-sweden-feature-importance_files/figure-html/unnamed-chunk-6-1.png&#34; alt=&#34;The sum of the strongest feature for every occupational group&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: The sum of the strongest feature for every occupational group
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Let’s see what we have found. First, check the occupation groups with a single feature that is significantly stronger than all other features. Linear models will not be suitable for all occupational groups implying that the model will not have a high R squared value.&lt;/p&gt;
&lt;p&gt;A strong signal, the average number of education years in the region, Personal care workers in health services&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- filter(tb_unique, `occuptional  (SSYK 2012)` == &amp;quot;532 Personal care workers in health services&amp;quot;)

model &amp;lt;- lm(perc_women_eng_region ~ regioneduyears, weights = suming, data = temp)

temp %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = regioneduyears, y = perc_women_eng_region, colour = suming)) +
    geom_abline (slope = model$coefficients[2], intercept = model$coefficients[1])  +
    labs(
      x = &amp;quot;Education years&amp;quot;,
      y = &amp;quot;Per cent of women in the occupation&amp;quot;
    )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-7&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-24-per-cent-who-are-women-in-different-occupational-groups-in-sweden-feature-importance_files/figure-html/unnamed-chunk-7-1.png&#34; alt=&#34;Personal care workers in health services, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: Personal care workers in health services, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model)$adj.r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.7732263&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: perc_women_eng_region
##                Df  Sum Sq Mean Sq F value    Pr(&amp;gt;F)    
## regioneduyears  1 315.573 315.573  133.98 5.039e-14 ***
## Residuals      38  89.506   2.355                      
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;postResample(pred = predict(model), obs = temp$perc_women_eng_region)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##       RMSE   Rsquared        MAE 
## 0.01225219 0.69069055 0.01023249&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A strong signal, the average number of education years in the region, Medical doctors&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- filter(tb_unique, `occuptional  (SSYK 2012)` == &amp;quot;221 Medical doctors&amp;quot;)

model &amp;lt;- lm(perc_women_eng_region ~ regioneduyears, weights = suming, data = temp)

temp %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = regioneduyears, y = perc_women_eng_region, colour = suming)) +
    geom_abline(slope = model$coefficients[2], intercept = model$coefficients[1]) +
    labs(
      x = &amp;quot;Education years&amp;quot;,
      y = &amp;quot;Per cent of women in the occupation&amp;quot;
    )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-8&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-24-per-cent-who-are-women-in-different-occupational-groups-in-sweden-feature-importance_files/figure-html/unnamed-chunk-8-1.png&#34; alt=&#34;Medical doctors, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: Medical doctors, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model)$adj.r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.8057127&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: perc_women_eng_region
##                Df  Sum Sq Mean Sq F value    Pr(&amp;gt;F)    
## regioneduyears  1 164.765 164.765  154.44 1.385e-14 ***
## Residuals      36  38.407   1.067                      
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;postResample(pred = predict(model), obs = temp$perc_women_eng_region)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##       RMSE   Rsquared        MAE 
## 0.01683530 0.72088034 0.01385548&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A strong signal, the per cent women in the region, Insurance advisers, sales and purchasing agents&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- filter(tb_unique, `occuptional  (SSYK 2012)` == &amp;quot;332 Insurance advisers, sales and purchasing agents&amp;quot;)

model &amp;lt;- lm(perc_women_eng_region ~ perc_women_region, weights = suming, data = temp)

temp %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = perc_women_region, y = perc_women_eng_region, colour = suming)) +
    geom_abline(slope = model$coefficients[2], intercept = model$coefficients[1]) +
    labs(
      x = &amp;quot;Per cent of women in the region&amp;quot;,
      y = &amp;quot;Per cent of women in the occupation&amp;quot;
    )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-9&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-24-per-cent-who-are-women-in-different-occupational-groups-in-sweden-feature-importance_files/figure-html/unnamed-chunk-9-1.png&#34; alt=&#34;Insurance advisers, sales and purchasing agents, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: Insurance advisers, sales and purchasing agents, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model)$adj.r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.6283407&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: perc_women_eng_region
##                   Df Sum Sq Mean Sq F value    Pr(&amp;gt;F)    
## perc_women_region  1 529.66  529.66  56.791 1.395e-08 ***
## Residuals         32 298.45    9.33                      
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;postResample(pred = predict(model), obs = temp$perc_women_eng_region)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##       RMSE   Rsquared        MAE 
## 0.02935038 0.49206133 0.02250770&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Two strong signals, population size in the region and the average number of education years in the region, Engineering professionals&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- filter(tb_unique, `occuptional  (SSYK 2012)` == &amp;quot;214 Engineering professionals&amp;quot;)

s3d &amp;lt;- scatterplot3d(
  temp$sum_pop, 
  temp$regioneduyears, 
  temp$perc_women_eng_region,
  type = &amp;quot;h&amp;quot;, 
  color = &amp;quot;blue&amp;quot;, 
  xlab = &amp;quot;Population in region&amp;quot;,
  ylab = &amp;quot;Education years&amp;quot;,
  zlab = &amp;quot;Per cent of women in the occupation&amp;quot;)

model &amp;lt;- lm(perc_women_eng_region ~ sum_pop + regioneduyears, weights = suming, data = temp)

s3d$plane3d(model)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-10&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-24-per-cent-who-are-women-in-different-occupational-groups-in-sweden-feature-importance_files/figure-html/unnamed-chunk-10-1.png&#34; alt=&#34;Engineering professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: Engineering professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model)$adj.r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.8121964&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: perc_women_eng_region
##                Df  Sum Sq Mean Sq F value    Pr(&amp;gt;F)    
## sum_pop         1 255.902 255.902 144.321 5.673e-14 ***
## regioneduyears  1  31.373  31.373  17.693 0.0001712 ***
## Residuals      35  62.060   1.773                      
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;postResample(pred = predict(model), obs = temp$perc_women_eng_region)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##        RMSE    Rsquared         MAE 
## 0.012229213 0.835386966 0.009935413&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Two strong signals, population size in the region and the per cent women in the region, Insurance advisers, sales and purchasing agents&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- filter(tb_unique, `occuptional  (SSYK 2012)` == &amp;quot;332 Insurance advisers, sales and purchasing agents&amp;quot;)

s3d &amp;lt;- scatterplot3d(
  temp$sum_pop, 
  temp$perc_women_region, 
  temp$perc_women_eng_region,
  type = &amp;quot;h&amp;quot;, 
  color = &amp;quot;blue&amp;quot;, 
  xlab = &amp;quot;Population in region&amp;quot;,
  ylab = &amp;quot;Per cent of women in the region&amp;quot;,
  zlab = &amp;quot;Per cent of women in the occupation&amp;quot;)

model &amp;lt;- lm(perc_women_eng_region ~ sum_pop + perc_women_region, weights = suming, data = temp)

s3d$plane3d(model)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-11&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-24-per-cent-who-are-women-in-different-occupational-groups-in-sweden-feature-importance_files/figure-html/unnamed-chunk-11-1.png&#34; alt=&#34;Insurance advisers, sales and purchasing agents, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: Insurance advisers, sales and purchasing agents, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model)$adj.r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.6525952&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: perc_women_eng_region
##                   Df Sum Sq Mean Sq F value    Pr(&amp;gt;F)    
## sum_pop            1 263.40 263.403  30.214 5.168e-06 ***
## perc_women_region  1 294.45 294.455  33.776 2.099e-06 ***
## Residuals         31 270.25   8.718                      
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;postResample(pred = predict(model), obs = temp$perc_women_eng_region)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##       RMSE   Rsquared        MAE 
## 0.02638844 0.57325855 0.02034915&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Two strong signals, year and the per cent women in the region, Physical and engineering science technicians&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- filter(tb_unique, `occuptional  (SSYK 2012)` == &amp;quot;311 Physical and engineering science technicians&amp;quot;)

s3d &amp;lt;- scatterplot3d(
  temp$year_n, 
  temp$perc_women_region, 
  temp$perc_women_eng_region, 
  type = &amp;quot;h&amp;quot;, 
  color = &amp;quot;blue&amp;quot;, 
  xlab = &amp;quot;Year&amp;quot;,
  ylab = &amp;quot;Per cent of women in the region&amp;quot;,
  zlab = &amp;quot;Per cent of women in the occupation&amp;quot;)

model &amp;lt;- lm(perc_women_eng_region ~ year_n + perc_women_region, weights = suming, data = temp)

s3d$plane3d(model)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-12&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-24-per-cent-who-are-women-in-different-occupational-groups-in-sweden-feature-importance_files/figure-html/unnamed-chunk-12-1.png&#34; alt=&#34;Physical and engineering science technicians, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: Physical and engineering science technicians, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model)$adj.r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.5373011&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: perc_women_eng_region
##                   Df Sum Sq Mean Sq F value    Pr(&amp;gt;F)    
## year_n             1  32.63  32.630  7.6503  0.009621 ** 
## perc_women_region  1 134.39 134.393 31.5091 4.127e-06 ***
## Residuals         30 127.96   4.265                      
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;postResample(pred = predict(model), obs = temp$perc_women_eng_region)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##       RMSE   Rsquared        MAE 
## 0.01695193 0.59082239 0.01266243&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Two strong signals, year and salary, Naprapaths, physiotherapists, occupational therapists&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- filter(tb_unique, `occuptional  (SSYK 2012)` == &amp;quot;227 Naprapaths, physiotherapists, occupational therapists&amp;quot;)

s3d &amp;lt;- scatterplot3d(
  temp$year_n, 
  temp$salary, 
  temp$perc_women_eng_region, 
  type = &amp;quot;h&amp;quot;, 
  color = &amp;quot;blue&amp;quot;, 
  xlab = &amp;quot;Year&amp;quot;,
  ylab = &amp;quot;Salary&amp;quot;,
  zlab = &amp;quot;Per cent of women in the occupation&amp;quot;)

model &amp;lt;- lm(perc_women_eng_region ~ year_n + salary, weights = suming, data = temp)

s3d$plane3d(model)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-13&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-24-per-cent-who-are-women-in-different-occupational-groups-in-sweden-feature-importance_files/figure-html/unnamed-chunk-13-1.png&#34; alt=&#34;Naprapaths, physiotherapists, occupational therapists, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: Naprapaths, physiotherapists, occupational therapists, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model)$adj.r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.5269917&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: perc_women_eng_region
##           Df Sum Sq Mean Sq F value    Pr(&amp;gt;F)    
## year_n     1 5.8240  5.8240  16.077 0.0005492 ***
## salary     1 4.9902  4.9902  13.776 0.0011481 ** 
## Residuals 23 8.3317  0.3622                      
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;postResample(pred = predict(model), obs = temp$perc_women_eng_region)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##       RMSE   Rsquared        MAE 
## 0.01261698 0.46523146 0.01003402&lt;/code&gt;&lt;/pre&gt;
</description>
    </item>
    
    <item>
      <title>The number of engineers in the Swedish regions, feature importance</title>
      <link>http://mikaellundqvist.rbind.io/2020/05/04/the-number-of-engineers-in-the-swedish-regions-feature-importance/</link>
      <pubDate>Mon, 04 May 2020 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2020/05/04/the-number-of-engineers-in-the-swedish-regions-feature-importance/</guid>
      <description>


&lt;p&gt;In my last post, I analysed the feature importance for the per cent of engineers in Sweden who are women. I found that the size of the region is a feature that is significant for the per cent of engineers in Sweden who are women. The size of the region is correlated to the number of engineers that works in the region. In this post, I will analyse what predictors are best to forecast the number of engineers in the region. I will use models from the caret package in my analysis.&lt;/p&gt;
&lt;p&gt;Statistics Sweden use NUTS (Nomenclature des Unités Territoriales Statistiques), which is the EU’s hierarchical regional division, to specify the regions.&lt;/p&gt;
&lt;p&gt;Please send suggestions for improvement of the analysis to &lt;a href=&#34;mailto:ranalystatisticssweden@gmail.com&#34; class=&#34;email&#34;&gt;ranalystatisticssweden@gmail.com&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages -------------------------------------------------- tidyverse 1.3.0 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.3.0     v purrr   0.3.4
## v tibble  3.0.0     v dplyr   0.8.5
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.5.0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ----------------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (broom)
library (car)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (caret)    &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: lattice&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;caret&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     lift&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (recipes)  &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;recipes&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:stringr&amp;#39;:
## 
##     fixed&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:stats&amp;#39;:
## 
##     step&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (PerformanceAnalytics)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: xts&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: zoo&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;zoo&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:base&amp;#39;:
## 
##     as.Date, as.Date.numeric&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;xts&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     first, last&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;PerformanceAnalytics&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:graphics&amp;#39;:
## 
##     legend&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (ggpubr)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: magrittr&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;magrittr&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     set_names&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:tidyr&amp;#39;:
## 
##     extract&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (ipred) 
library (iml)
library (DALEX)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Welcome to DALEX (version: 1.2.1).
## Find examples and detailed introduction at: https://pbiecek.github.io/ema/&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;DALEX&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     explain&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (Metrics)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;Metrics&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:caret&amp;#39;:
## 
##     precision, recall&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (auditor)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;auditor&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:DALEX&amp;#39;:
## 
##     model_performance&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;readfile &amp;lt;- function (file1){read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%
  gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = groupsize) %&amp;gt;%
  drop_na() %&amp;gt;%
  mutate (year_n = parse_number (year))
}

perc_women &amp;lt;- function(x){  
  ifelse (length(x) == 2, x[2] / (x[1] + x[2]), NA)
} 

nuts &amp;lt;- read.csv(&amp;quot;nuts.csv&amp;quot;) %&amp;gt;%
  mutate(NUTS2_sh = substr(NUTS2, 3, 4))

nuts %&amp;gt;% 
  distinct (NUTS2_en) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Nomenclature des Unités Territoriales Statistiques (NUTS)&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-1&#34;&gt;Table 1: &lt;/span&gt;Nomenclature des Unités Territoriales Statistiques (NUTS)&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;NUTS2_en&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE11 Stockholm&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE12 East-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE21 Småland and islands&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE22 South Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE23 West Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE31 North-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE32 Central Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE33 Upper Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;bs &amp;lt;- function(formula, data, indices) {
  d &amp;lt;- data[indices,] # allows boot to select sample 
  fit &amp;lt;- lm(formula, weights = tbnum_weights, data=d)
  return(coef(fit)) 
} &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data tables are downloaded from Statistics Sweden. They are saved as a comma-delimited file without heading, UF0506A1.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The tables:&lt;/p&gt;
&lt;p&gt;UF0506A1_1.csv: Population 16-74 years of age by region, highest level of education, age and sex. Year 1985 - 2018 NUTS 2 level 2008- 10 year intervals (16-74)&lt;/p&gt;
&lt;p&gt;000000CG_1: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2018 Monthly salary All sectors.&lt;/p&gt;
&lt;p&gt;000000CD_1.csv: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2018 Number of employees All sectors-&lt;/p&gt;
&lt;p&gt;The data is aggregated, the size of each group is in the column groupsize.&lt;/p&gt;
&lt;p&gt;I have also included some calculated predictors from the original data.&lt;/p&gt;
&lt;p&gt;perc_women: The percentage of women within each group defined by edulevel, region and year&lt;/p&gt;
&lt;p&gt;perc_women_region: The percentage of women within each group defined by year and region&lt;/p&gt;
&lt;p&gt;regioneduyears: The average number of education years per capita within each group defined by year and region&lt;/p&gt;
&lt;p&gt;eduquotient: The quotient between regioneduyears for men and women&lt;/p&gt;
&lt;p&gt;salaryquotient: The quotient between salary for men and women within each group defined by year and region&lt;/p&gt;
&lt;p&gt;perc_women_eng_region: The percentage of women who are engineers within each group defined by year and region&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;numedulevel &amp;lt;- read.csv(&amp;quot;edulevel_1.csv&amp;quot;) 

numedulevel[, 2] &amp;lt;- data.frame(c(8, 9, 10, 12, 13, 15, 22, NA))

tb &amp;lt;- readfile(&amp;quot;000000CG_1.csv&amp;quot;) 
tb &amp;lt;- readfile(&amp;quot;000000CD_1.csv&amp;quot;) %&amp;gt;% 
  left_join(tb, by = c(&amp;quot;region&amp;quot;, &amp;quot;year&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;,&amp;quot;occuptional  (SSYK 2012)&amp;quot;)) %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;214 Engineering professionals&amp;quot;) 

tb &amp;lt;- readfile(&amp;quot;UF0506A1_1.csv&amp;quot;) %&amp;gt;%  
  right_join(tb, by = c(&amp;quot;region&amp;quot;, &amp;quot;year&amp;quot;, &amp;quot;sex&amp;quot;)) %&amp;gt;%
  right_join(numedulevel, by = c(&amp;quot;level of education&amp;quot; = &amp;quot;level.of.education&amp;quot;)) %&amp;gt;%
  filter(!is.na(eduyears)) %&amp;gt;%  
  mutate(edulevel = `level of education`) %&amp;gt;%
  group_by(edulevel, region, year, sex) %&amp;gt;%
  mutate(groupsize_all_ages = sum(groupsize)) %&amp;gt;%  
  group_by(edulevel, region, year) %&amp;gt;% 
  mutate (perc_women = perc_women (groupsize_all_ages[1:2])) %&amp;gt;% 
  mutate (suming = sum(groupsize.x)) %&amp;gt;%
  mutate (salary = (groupsize.y[2] * groupsize.x[2] + groupsize.y[1] * groupsize.x[1])/(groupsize.x[2] + groupsize.x[1])) %&amp;gt;%
  group_by (sex, year, region) %&amp;gt;%
  mutate(regioneduyears_sex = sum(groupsize * eduyears) / sum(groupsize)) %&amp;gt;%
  mutate(regiongroupsize = sum(groupsize)) %&amp;gt;% 
  mutate(suming_sex = groupsize.x) %&amp;gt;%
  group_by(region, year) %&amp;gt;%
  mutate (sum_pop = sum(groupsize)) %&amp;gt;%
  mutate (regioneduyears = sum(groupsize * eduyears) / sum(groupsize)) %&amp;gt;%
  mutate (perc_women_region = perc_women (regiongroupsize[1:2])) %&amp;gt;% 
  mutate (eduquotient = regioneduyears_sex[2] / regioneduyears_sex[1]) %&amp;gt;% 
  mutate (salary_sex = groupsize.y) %&amp;gt;%
  mutate (salaryquotient = salary_sex[2] / salary_sex[1]) %&amp;gt;%   
  mutate (perc_women_eng_region = perc_women(suming_sex[1:2])) %&amp;gt;%  
  left_join(nuts %&amp;gt;% distinct (NUTS2_en, NUTS2_sh), by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) %&amp;gt;%
  drop_na()

summary(tb)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##     region              age            level of education     sex           
##  Length:532         Length:532         Length:532         Length:532        
##  Class :character   Class :character   Class :character   Class :character  
##  Mode  :character   Mode  :character   Mode  :character   Mode  :character  
##                                                                             
##                                                                             
##                                                                             
##      year             groupsize          year_n        sector         
##  Length:532         Min.   :   405   Min.   :2014   Length:532        
##  Class :character   1st Qu.: 20996   1st Qu.:2015   Class :character  
##  Mode  :character   Median : 43656   Median :2016   Mode  :character  
##                     Mean   : 64760   Mean   :2016                     
##                     3rd Qu.:102394   3rd Qu.:2017                     
##                     Max.   :271889   Max.   :2018                     
##  occuptional  (SSYK 2012)  groupsize.x       year_n.x     groupsize.y   
##  Length:532               Min.   :  340   Min.   :2014   Min.   :34700  
##  Class :character         1st Qu.: 1700   1st Qu.:2015   1st Qu.:40300  
##  Mode  :character         Median : 3000   Median :2016   Median :42000  
##                           Mean   : 5850   Mean   :2016   Mean   :42078  
##                           3rd Qu.: 7475   3rd Qu.:2017   3rd Qu.:43925  
##                           Max.   :21400   Max.   :2018   Max.   :49400  
##     year_n.y       eduyears       edulevel         groupsize_all_ages
##  Min.   :2014   Min.   : 8.00   Length:532         Min.   :   405    
##  1st Qu.:2015   1st Qu.: 9.00   Class :character   1st Qu.: 20996    
##  Median :2016   Median :12.00   Mode  :character   Median : 43656    
##  Mean   :2016   Mean   :12.71                      Mean   : 64760    
##  3rd Qu.:2017   3rd Qu.:15.00                      3rd Qu.:102394    
##  Max.   :2018   Max.   :22.00                      Max.   :271889    
##    perc_women         suming          salary      regioneduyears_sex
##  Min.   :0.3575   Min.   : 2040   Min.   :38376   Min.   :11.18     
##  1st Qu.:0.4338   1st Qu.: 3080   1st Qu.:40916   1st Qu.:11.61     
##  Median :0.4631   Median : 8950   Median :42866   Median :11.74     
##  Mean   :0.4771   Mean   :11701   Mean   :42776   Mean   :11.79     
##  3rd Qu.:0.5132   3rd Qu.:20100   3rd Qu.:44444   3rd Qu.:12.04     
##  Max.   :0.6423   Max.   :29500   Max.   :48429   Max.   :12.55     
##  regiongroupsize    suming_sex       sum_pop        regioneduyears 
##  Min.   :128262   Min.   :  340   Min.   : 262870   Min.   :11.39  
##  1st Qu.:288058   1st Qu.: 1700   1st Qu.: 587142   1st Qu.:11.54  
##  Median :514608   Median : 3000   Median :1029820   Median :11.81  
##  Mean   :453318   Mean   : 5850   Mean   : 906635   Mean   :11.79  
##  3rd Qu.:691870   3rd Qu.: 7475   3rd Qu.:1395157   3rd Qu.:11.90  
##  Max.   :827940   Max.   :21400   Max.   :1655215   Max.   :12.41  
##  perc_women_region  eduquotient      salary_sex    salaryquotient  
##  Min.   :0.4831    Min.   :1.019   Min.   :34700   Min.   :0.8653  
##  1st Qu.:0.4882    1st Qu.:1.029   1st Qu.:40300   1st Qu.:0.9329  
##  Median :0.4934    Median :1.034   Median :42000   Median :0.9395  
##  Mean   :0.4923    Mean   :1.034   Mean   :42078   Mean   :0.9447  
##  3rd Qu.:0.4970    3rd Qu.:1.041   3rd Qu.:43925   3rd Qu.:0.9537  
##  Max.   :0.5014    Max.   :1.047   Max.   :49400   Max.   :1.0446  
##  perc_women_eng_region   NUTS2_sh        
##  Min.   :0.1566        Length:532        
##  1st Qu.:0.1787        Class :character  
##  Median :0.2042        Mode  :character  
##  Mean   :0.2039                          
##  3rd Qu.:0.2216                          
##  Max.   :0.2746&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Prepare the data using Tidyverse recipes package, i.e. centre, scale and make sure all predictors are numerical.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbtemp &amp;lt;- ungroup(tb) %&amp;gt;% dplyr::select(region, salary, year_n, sum_pop, regioneduyears, suming, perc_women_region, salaryquotient, eduquotient, perc_women_eng_region)

tb_outliers_info &amp;lt;- unique(tbtemp)

tb_unique &amp;lt;- unique(dplyr::select(tbtemp, -region))

tbnum_weights &amp;lt;- tb_unique$suming

blueprint &amp;lt;- recipe(suming ~ ., data = tb_unique) %&amp;gt;%
  step_integer(matches(&amp;quot;Qual|Cond|QC|Qu&amp;quot;)) %&amp;gt;%
  step_center(all_numeric(), -all_outcomes()) %&amp;gt;%
  step_scale(all_numeric(), -all_outcomes()) %&amp;gt;%
  step_dummy(all_nominal(), -all_outcomes(), one_hot = TRUE)

prepare &amp;lt;- prep(blueprint, training = tb_unique)

tbnum &amp;lt;- bake(prepare, new_data = tb_unique)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The correlation chart shows that many predictors are correlated with the response variable but also that many predictors are correlated between each other. Some notable correlations are in a dedicated plot below.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;chart.Correlation(tbnum, histogram = TRUE, pch = 19)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-41&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-4-1.png&#34; alt=&#34;Correlation between response and predictors and between predictors, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: Correlation between response and predictors and between predictors, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;p1 &amp;lt;- tb %&amp;gt;%
  ggscatter(x = &amp;quot;sum_pop&amp;quot;, y = &amp;quot;suming&amp;quot;, 
    add = &amp;quot;reg.line&amp;quot;, conf.int = TRUE, 
    cor.coef = TRUE, cor.method = &amp;quot;pearson&amp;quot;) 

p2 &amp;lt;- tb %&amp;gt;%
  ggscatter(x = &amp;quot;sum_pop&amp;quot;, y = &amp;quot;perc_women_region&amp;quot;, 
    add = &amp;quot;reg.line&amp;quot;, conf.int = TRUE, 
    cor.coef = TRUE, cor.method = &amp;quot;pearson&amp;quot;) 

p3 &amp;lt;- tb %&amp;gt;%
  ggscatter(x = &amp;quot;suming&amp;quot;, y = &amp;quot;perc_women_eng_region&amp;quot;, 
    add = &amp;quot;reg.line&amp;quot;, conf.int = TRUE, 
    cor.coef = TRUE, cor.method = &amp;quot;pearson&amp;quot;)

p4 &amp;lt;- tb %&amp;gt;%
  ggscatter(x = &amp;quot;sum_pop&amp;quot;, y = &amp;quot;perc_women_eng_region&amp;quot;, 
    add = &amp;quot;reg.line&amp;quot;, conf.int = TRUE, 
    cor.coef = TRUE, cor.method = &amp;quot;pearson&amp;quot;)

gridExtra::grid.arrange(p1, p2, p3, p4, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## `geom_smooth()` using formula &amp;#39;y ~ x&amp;#39;
## `geom_smooth()` using formula &amp;#39;y ~ x&amp;#39;
## `geom_smooth()` using formula &amp;#39;y ~ x&amp;#39;
## `geom_smooth()` using formula &amp;#39;y ~ x&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-42&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-4-2.png&#34; alt=&#34;Correlation between response and predictors and between predictors, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: Correlation between response and predictors and between predictors, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;plot_model will show diagnostics for the model, a residual plot, scale location plot, residual density and the regression error characteristic curve. It will also show the residuals versus the actual response to help find outliers. It will plot the feature importance and feature effects. In addition, it will plot how strongly features interact with each other and the 2-way interactions between the feature with the strongest interaction and all other features. The interaction measure regards how much of the variance of f(x) is explained by the interaction. The measure is between 0 (no interaction) and 1 (= 100% of variance of f(x) due to interactions).&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model &amp;lt;- function(model){
   invisible(capture.output(exp_model &amp;lt;- DALEX::explain(model, data = tbnum, y = tbnum$suming))) # Knit and DALEX::explain generates invalid rss feed
  
   lm_mr &amp;lt;- model_residual(exp_model)  
    
   predictor &amp;lt;- Predictor$new(model, 
      data = dplyr::select(tbnum, -suming), 
      y = tbnum$suming)    
   
   writeLines(&amp;quot;&amp;quot;)
   
   print(model)
   
   print(postResample(pred = predict(model), obs = tbnum$suming))
 
   p1 &amp;lt;- plot(lm_mr, type = &amp;quot;residual&amp;quot;)  
   
   p2 &amp;lt;- plot(lm_mr, type = &amp;quot;scalelocation&amp;quot;)   
   
   p3 &amp;lt;- plot(lm_mr, type = &amp;quot;residual_density&amp;quot;) 
   
   p4 &amp;lt;- plot(lm_mr, type = &amp;quot;rec&amp;quot;) 
   
   print(gridExtra::grid.arrange(p1, p2, p3, p4, ncol = 2))
   
   print(plot_residual(lm_mr, variable = &amp;quot;_y_hat_&amp;quot;, nlabel = 10))
   
   print(plot (FeatureImp$new(predictor, loss = &amp;quot;mae&amp;quot;)))

   print(plot (FeatureEffects$new(predictor)))
   
   interact &amp;lt;- Interaction$new(predictor)
   
   p1 &amp;lt;- plot (interact)
   
   p2 &amp;lt;- plot (Interaction$new(predictor, feature = as.character(arrange(interact$results, desc(.interaction))[1,1])))
   
   print(gridExtra::grid.arrange(p1, p2, ncol = 2))
}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Fit the following models and plot inference and diagnostics. Principal component analysis (PCA) is used to transform the data into a smaller subspace where the new variables are uncorrelated with one another due to the high multicollinearity.
Linear Regression, Projection Pursuit Regression, Bagged MARS, Random Forest, Bagged CART, Boosted Tree, Conditional Inference Tree&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;modelcollection &amp;lt;- c(&amp;quot;lm&amp;quot;, &amp;quot;ppr&amp;quot;, &amp;quot;bagEarth&amp;quot;, &amp;quot;ranger&amp;quot;, &amp;quot;treebag&amp;quot;, &amp;quot;blackboost&amp;quot;, &amp;quot;ctree&amp;quot;)

for (model in modelcollection){
  invisible(capture.output(model &amp;lt;- caret::train(
     suming ~ .,
     data = tbnum,
     method = model,
     preProc=c(&amp;quot;pca&amp;quot;),
     weights = tbnum_weights,
     trControl = trainControl(method = &amp;quot;cv&amp;quot;, number = 10)
  )))  

  plot_model(model)
}&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Linear Regression 
## 
## 38 samples
##  8 predictor
## 
## Pre-processing: principal component signal extraction (8), centered (8),
##  scaled (8) 
## Resampling: Cross-Validated (10 fold) 
## Summary of sample sizes: 35, 34, 34, 35, 34, 34, ... 
## Resampling results:
## 
##   RMSE      Rsquared   MAE    
##   4237.874  0.8822043  3423.46
## 
## Tuning parameter &amp;#39;intercept&amp;#39; was held constant at a value of TRUE
##         RMSE     Rsquared          MAE 
## 3883.8558386    0.8463367 2767.1742230&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-61&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-1.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-62&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-2.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-63&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-3.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;patchwork&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:MASS&amp;#39;:
## 
##     area&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-64&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-4.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-65&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-5.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 
## Projection Pursuit Regression 
## 
## 38 samples
##  8 predictor
## 
## Pre-processing: principal component signal extraction (8), centered (8),
##  scaled (8) 
## Resampling: Cross-Validated (10 fold) 
## Summary of sample sizes: 34, 34, 34, 34, 34, 34, ... 
## Resampling results across tuning parameters:
## 
##   nterms  RMSE      Rsquared   MAE     
##   1       4130.062  0.8121472  3256.277
##   2       4246.374  0.8418553  3408.002
##   3       3906.203  0.8768507  3171.871
## 
## RMSE was used to select the optimal model using the smallest value.
## The final value used for the model was nterms = 3.
##         RMSE     Rsquared          MAE 
## 1402.1162486    0.9796416 1090.5426055&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-66&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-6.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-67&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-7.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-68&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-8.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 10: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-69&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-9.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 11: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: earth&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: Formula&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: plotmo&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: plotrix&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;plotrix&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:scales&amp;#39;:
## 
##     rescale&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: TeachingDemos&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-610&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-10.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 12: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## 
## Bagged MARS 
## 
## 38 samples
##  8 predictor
## 
## Pre-processing: principal component signal extraction (8), centered (8),
##  scaled (8) 
## Resampling: Cross-Validated (10 fold) 
## Summary of sample sizes: 34, 34, 34, 34, 35, 34, ... 
## Resampling results across tuning parameters:
## 
##   nprune  RMSE      Rsquared   MAE     
##    2      4671.353  0.8678650  3762.492
##    7      4301.170  0.8466750  3379.813
##   13      4535.948  0.8434574  3713.592
## 
## Tuning parameter &amp;#39;degree&amp;#39; was held constant at a value of 1
## RMSE was used to select the optimal model using the smallest value.
## The final values used for the model were nprune = 7 and degree = 1.
##         RMSE     Rsquared          MAE 
## 2950.1269148    0.9075753 2178.7339222&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-611&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-11.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 13: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-612&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-12.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 14: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-613&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-13.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 15: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-614&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-14.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 16: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-615&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-15.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 17: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 
## Random Forest 
## 
## 38 samples
##  8 predictor
## 
## Pre-processing: principal component signal extraction (8), centered (8),
##  scaled (8) 
## Resampling: Cross-Validated (10 fold) 
## Summary of sample sizes: 34, 34, 34, 34, 34, 34, ... 
## Resampling results across tuning parameters:
## 
##   mtry  splitrule   RMSE      Rsquared   MAE     
##   2     variance    6106.457  0.7899054  5600.253
##   2     extratrees  5899.990  0.8178129  5413.206
##   3     variance    5242.999  0.8372295  4583.812
##   3     extratrees  4978.308  0.8145967  4339.194
##   4     variance    4367.341  0.8690214  3526.925
##   4     extratrees  4461.317  0.8391514  3797.024
## 
## Tuning parameter &amp;#39;min.node.size&amp;#39; was held constant at a value of 5
## RMSE was used to select the optimal model using the smallest value.
## The final values used for the model were mtry = 4, splitrule = variance
##  and min.node.size = 5.
##         RMSE     Rsquared          MAE 
## 1782.3243833    0.9749664 1275.2575351&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-616&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-16.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 18: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-617&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-17.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 19: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-618&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-18.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 20: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-619&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-19.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 21: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-620&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-20.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 22: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 
## Bagged CART 
## 
## 38 samples
##  8 predictor
## 
## Pre-processing: principal component signal extraction (8), centered (8),
##  scaled (8) 
## Resampling: Cross-Validated (10 fold) 
## Summary of sample sizes: 35, 34, 34, 34, 34, 34, ... 
## Resampling results:
## 
##   RMSE      Rsquared   MAE     
##   4828.894  0.8094027  3527.702
## 
##         RMSE     Rsquared          MAE 
## 3481.9118680    0.8750994 2582.9979981&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-621&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-21.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 23: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-622&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-22.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 24: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-623&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-23.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 25: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-624&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-24.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 26: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in if (class(response) == &amp;quot;data.frame&amp;quot;) response &amp;lt;- as.matrix(response):
## the condition has length &amp;gt; 1 and only the first element will be used

## Warning in if (class(response) == &amp;quot;data.frame&amp;quot;) response &amp;lt;- as.matrix(response):
## the condition has length &amp;gt; 1 and only the first element will be used&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-625&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-25.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 27: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## 
## Boosted Tree 
## 
## 38 samples
##  8 predictor
## 
## Pre-processing: principal component signal extraction (8), centered (8),
##  scaled (8) 
## Resampling: Cross-Validated (10 fold) 
## Summary of sample sizes: 34, 34, 34, 34, 34, 35, ... 
## Resampling results across tuning parameters:
## 
##   maxdepth  mstop  RMSE      Rsquared   MAE     
##   1          50    4440.664  0.7708467  3558.175
##   1         100    4429.005  0.7943325  3512.541
##   1         150    4456.381  0.7981314  3487.719
##   2          50    4598.712  0.8028983  3497.232
##   2         100    4582.388  0.7786909  3482.167
##   2         150    4546.031  0.7990669  3437.192
##   3          50    4166.522  0.8926944  2940.884
##   3         100    4134.064  0.8935203  2910.923
##   3         150    4139.154  0.8939033  2918.382
## 
## RMSE was used to select the optimal model using the smallest value.
## The final values used for the model were mstop = 100 and maxdepth = 3.
##        RMSE    Rsquared         MAE 
## 110.7432126   0.9998769  88.9875261&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-626&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-26.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 28: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-627&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-27.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 29: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-628&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-28.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 30: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-629&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-29.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 31: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-630&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-30.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 32: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 
## Conditional Inference Tree 
## 
## 38 samples
##  8 predictor
## 
## Pre-processing: principal component signal extraction (8), centered (8),
##  scaled (8) 
## Resampling: Cross-Validated (10 fold) 
## Summary of sample sizes: 34, 34, 35, 34, 34, 34, ... 
## Resampling results across tuning parameters:
## 
##   mincriterion  RMSE      Rsquared   MAE   
##   0.01          4244.251  0.7539372  2824.5
##   0.50          4244.251  0.7539372  2824.5
##   0.99          4244.251  0.7539372  2824.5
## 
## RMSE was used to select the optimal model using the smallest value.
## The final value used for the model was mincriterion = 0.99.
##     RMSE Rsquared      MAE 
##        0        1        0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Removed 38 rows containing missing values (geom_point).&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-631&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-31.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 33: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in .subset2(public_bind_env, &amp;quot;initialize&amp;quot;)(...): Model error is 0,
## switching from compare=&amp;#39;ratio&amp;#39; to compare=&amp;#39;difference&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-632&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-32.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 34: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-633&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-33.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 35: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-634&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-34.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 36: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-635&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-05-04-the-number-of-engineers-in-the-swedish-regions-feature-importance_files/figure-html/unnamed-chunk-6-35.png&#34; alt=&#34;, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 37: , Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
</description>
    </item>
    
    <item>
      <title>Engineers in Sweden who are women, feature importance</title>
      <link>http://mikaellundqvist.rbind.io/2020/04/26/engineers-in-sweden-who-are-women-feature-importance/</link>
      <pubDate>Sun, 26 Apr 2020 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2020/04/26/engineers-in-sweden-who-are-women-feature-importance/</guid>
      <description>


&lt;p&gt;In my last post, I found that the per cent women in the region had a significant impact on the salaries of Engineers. In this post, I will analyse what predictors are best to forecast the percentage of women who are Engineers in the region. I will begin in much the same way as when I looked at salaries. However, there are limitations to linear models. In the second half of this post, I compare my finding to other machine learning algorithms.&lt;/p&gt;
&lt;p&gt;Statistics Sweden use NUTS (Nomenclature des Unités Territoriales Statistiques), which is the EU’s hierarchical regional division, to specify the regions.&lt;/p&gt;
&lt;p&gt;Please send suggestions for improvement of the analysis to &lt;a href=&#34;mailto:ranalystatisticssweden@gmail.com&#34; class=&#34;email&#34;&gt;ranalystatisticssweden@gmail.com&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages -------------------------------------------------- tidyverse 1.3.0 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.3.0     v purrr   0.3.4
## v tibble  3.0.0     v dplyr   0.8.5
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.5.0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ----------------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (broom)
library (car)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (leaps)
library (MASS)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;MASS&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     select&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (earth)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: Formula&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: plotmo&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: plotrix&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: TeachingDemos&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (lspline)
library (boot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;boot&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:car&amp;#39;:
## 
##     logit&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (arm)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: Matrix&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;Matrix&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:tidyr&amp;#39;:
## 
##     expand, pack, unpack&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: lme4&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Registered S3 methods overwritten by &amp;#39;lme4&amp;#39;:
##   method                          from
##   cooks.distance.influence.merMod car 
##   influence.merMod                car 
##   dfbeta.influence.merMod         car 
##   dfbetas.influence.merMod        car&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## arm (Version 1.10-1, built: 2018-4-12)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Working directory is C:/R/rblog/content/post&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;arm&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:boot&amp;#39;:
## 
##     logit&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:plotrix&amp;#39;:
## 
##     rescale&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:car&amp;#39;:
## 
##     logit&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (caret)    &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: lattice&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;lattice&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:boot&amp;#39;:
## 
##     melanoma&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;caret&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     lift&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (recipes)  &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;recipes&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:stringr&amp;#39;:
## 
##     fixed&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:stats&amp;#39;:
## 
##     step&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (vip)         &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;vip&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:utils&amp;#39;:
## 
##     vi&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (ggpubr)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: magrittr&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;magrittr&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     set_names&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:tidyr&amp;#39;:
## 
##     extract&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (glmnet)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loaded glmnet 3.0-2&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (rpart)       
library (ipred) 
library (iml)
library (neuralnet)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;neuralnet&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     compute&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (DALEX)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Welcome to DALEX (version: 1.2.1).
## Find examples and detailed introduction at: https://pbiecek.github.io/ema/&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;DALEX&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     explain&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (Metrics)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;Metrics&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:caret&amp;#39;:
## 
##     precision, recall&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (auditor)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;auditor&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:DALEX&amp;#39;:
## 
##     model_performance&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;readfile &amp;lt;- function (file1){read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%
  gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = groupsize) %&amp;gt;%
  drop_na() %&amp;gt;%
  mutate (year_n = parse_number (year))
}

perc_women &amp;lt;- function(x){  
  ifelse (length(x) == 2, x[2] / (x[1] + x[2]), NA)
} 

nuts &amp;lt;- read.csv(&amp;quot;nuts.csv&amp;quot;) %&amp;gt;%
  mutate(NUTS2_sh = substr(NUTS2, 3, 4))

nuts %&amp;gt;% 
  distinct (NUTS2_en) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Nomenclature des Unités Territoriales Statistiques (NUTS)&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-1&#34;&gt;Table 1: &lt;/span&gt;Nomenclature des Unités Territoriales Statistiques (NUTS)&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;NUTS2_en&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE11 Stockholm&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE12 East-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE21 Småland and islands&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE22 South Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE23 West Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE31 North-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE32 Central Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE33 Upper Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;bs &amp;lt;- function(formula, data, indices) {
  d &amp;lt;- data[indices,] # allows boot to select sample 
  fit &amp;lt;- lm(formula, weights = tbnum_weights, data=d)
  return(coef(fit)) 
} &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data tables are downloaded from Statistics Sweden. They are saved as a comma-delimited file without heading, UF0506A1.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The tables:&lt;/p&gt;
&lt;p&gt;UF0506A1_1.csv: Population 16-74 years of age by region, highest level of education, age and sex. Year 1985 - 2018 NUTS 2 level 2008- Age, total, all reported ages&lt;/p&gt;
&lt;p&gt;000000CG_1: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2018 Monthly salary All sectors.&lt;/p&gt;
&lt;p&gt;000000CD_1.csv: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2018 Number of employees All sectors-&lt;/p&gt;
&lt;p&gt;The data is aggregated, the size of each group is in the column groupsize.&lt;/p&gt;
&lt;p&gt;I have also included some calculated predictors from the original data.&lt;/p&gt;
&lt;p&gt;perc_women: The percentage of women within each group defined by edulevel, region and year&lt;/p&gt;
&lt;p&gt;perc_women_region: The percentage of women within each group defined by year and region&lt;/p&gt;
&lt;p&gt;regioneduyears: The average number of education years per capita within each group defined by sex, year and region&lt;/p&gt;
&lt;p&gt;eduquotient: The quotient between regioneduyears for men and women&lt;/p&gt;
&lt;p&gt;salaryquotient: The quotient between salary for men and women within each group defined by year and region&lt;/p&gt;
&lt;p&gt;perc_women_eng_region: The percentage of women who are engineers within each group defined by year and region&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;numedulevel &amp;lt;- read.csv(&amp;quot;edulevel_1.csv&amp;quot;) 

numedulevel[, 2] &amp;lt;- data.frame(c(8, 9, 10, 12, 13, 15, 22, NA))

tb &amp;lt;- readfile(&amp;quot;000000CG_1.csv&amp;quot;) 
tb &amp;lt;- readfile(&amp;quot;000000CD_1.csv&amp;quot;) %&amp;gt;% 
  left_join(tb, by = c(&amp;quot;region&amp;quot;, &amp;quot;year&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;,&amp;quot;occuptional  (SSYK 2012)&amp;quot;)) %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;214 Engineering professionals&amp;quot;) 

tb &amp;lt;- readfile(&amp;quot;UF0506A1_1.csv&amp;quot;) %&amp;gt;%  
  right_join(tb, by = c(&amp;quot;region&amp;quot;, &amp;quot;year&amp;quot;, &amp;quot;sex&amp;quot;)) %&amp;gt;%
  right_join(numedulevel, by = c(&amp;quot;level of education&amp;quot; = &amp;quot;level.of.education&amp;quot;)) %&amp;gt;%
  filter(!is.na(eduyears)) %&amp;gt;%  
  mutate(edulevel = `level of education`) %&amp;gt;%
  group_by(edulevel, region, year, sex) %&amp;gt;%
  mutate(groupsize_all_ages = sum(groupsize)) %&amp;gt;%  
  group_by(edulevel, region, year) %&amp;gt;% 
  mutate (perc_women = perc_women (groupsize_all_ages[1:2])) %&amp;gt;% 
  group_by (sex, year, region) %&amp;gt;%
  mutate(regioneduyears = sum(groupsize * eduyears) / sum(groupsize)) %&amp;gt;%
  mutate(regiongroupsize = sum(groupsize)) %&amp;gt;% 
  mutate(suming = groupsize.x) %&amp;gt;%
  group_by(region, year) %&amp;gt;%
  mutate (sum_pop = sum(groupsize)) %&amp;gt;%
  mutate (perc_women_region = perc_women (regiongroupsize[1:2])) %&amp;gt;% 
  mutate (eduquotient = regioneduyears[2] / regioneduyears[1]) %&amp;gt;% 
  mutate (salary = groupsize.y) %&amp;gt;%
  mutate (salaryquotient = salary[2] / salary[1]) %&amp;gt;%   
  mutate (perc_women_eng_region = perc_women(suming[1:2])) %&amp;gt;%  
  left_join(nuts %&amp;gt;% distinct (NUTS2_en, NUTS2_sh), by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) %&amp;gt;%
  drop_na()

summary(tb)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##     region              age            level of education     sex           
##  Length:532         Length:532         Length:532         Length:532        
##  Class :character   Class :character   Class :character   Class :character  
##  Mode  :character   Mode  :character   Mode  :character   Mode  :character  
##                                                                             
##                                                                             
##                                                                             
##      year             groupsize          year_n        sector         
##  Length:532         Min.   :   405   Min.   :2014   Length:532        
##  Class :character   1st Qu.: 20996   1st Qu.:2015   Class :character  
##  Mode  :character   Median : 43656   Median :2016   Mode  :character  
##                     Mean   : 64760   Mean   :2016                     
##                     3rd Qu.:102394   3rd Qu.:2017                     
##                     Max.   :271889   Max.   :2018                     
##  occuptional  (SSYK 2012)  groupsize.x       year_n.x     groupsize.y   
##  Length:532               Min.   :  340   Min.   :2014   Min.   :34700  
##  Class :character         1st Qu.: 1700   1st Qu.:2015   1st Qu.:40300  
##  Mode  :character         Median : 3000   Median :2016   Median :42000  
##                           Mean   : 5850   Mean   :2016   Mean   :42078  
##                           3rd Qu.: 7475   3rd Qu.:2017   3rd Qu.:43925  
##                           Max.   :21400   Max.   :2018   Max.   :49400  
##     year_n.y       eduyears       edulevel         groupsize_all_ages
##  Min.   :2014   Min.   : 8.00   Length:532         Min.   :   405    
##  1st Qu.:2015   1st Qu.: 9.00   Class :character   1st Qu.: 20996    
##  Median :2016   Median :12.00   Mode  :character   Median : 43656    
##  Mean   :2016   Mean   :12.71                      Mean   : 64760    
##  3rd Qu.:2017   3rd Qu.:15.00                      3rd Qu.:102394    
##  Max.   :2018   Max.   :22.00                      Max.   :271889    
##    perc_women     regioneduyears  regiongroupsize      suming     
##  Min.   :0.3575   Min.   :11.18   Min.   :128262   Min.   :  340  
##  1st Qu.:0.4338   1st Qu.:11.61   1st Qu.:288058   1st Qu.: 1700  
##  Median :0.4631   Median :11.74   Median :514608   Median : 3000  
##  Mean   :0.4771   Mean   :11.79   Mean   :453318   Mean   : 5850  
##  3rd Qu.:0.5132   3rd Qu.:12.04   3rd Qu.:691870   3rd Qu.: 7475  
##  Max.   :0.6423   Max.   :12.55   Max.   :827940   Max.   :21400  
##     sum_pop        perc_women_region  eduquotient        salary     
##  Min.   : 262870   Min.   :0.4831    Min.   :1.019   Min.   :34700  
##  1st Qu.: 587142   1st Qu.:0.4882    1st Qu.:1.029   1st Qu.:40300  
##  Median :1029820   Median :0.4934    Median :1.034   Median :42000  
##  Mean   : 906635   Mean   :0.4923    Mean   :1.034   Mean   :42078  
##  3rd Qu.:1395157   3rd Qu.:0.4970    3rd Qu.:1.041   3rd Qu.:43925  
##  Max.   :1655215   Max.   :0.5014    Max.   :1.047   Max.   :49400  
##  salaryquotient   perc_women_eng_region   NUTS2_sh        
##  Min.   :0.8653   Min.   :0.1566        Length:532        
##  1st Qu.:0.9329   1st Qu.:0.1787        Class :character  
##  Median :0.9395   Median :0.2042        Mode  :character  
##  Mean   :0.9447   Mean   :0.2039                          
##  3rd Qu.:0.9537   3rd Qu.:0.2216                          
##  Max.   :1.0446   Max.   :0.2746&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Prepare the data using Tidyverse recipes package, i.e. centre, scale and make sure all predictors are numerical.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbtemp &amp;lt;- ungroup(tb) %&amp;gt;% dplyr::select(region, salary, year_n, regiongroupsize, sex, regioneduyears, suming, perc_women_region, salaryquotient, eduquotient, perc_women_eng_region)

tb_outliers_info &amp;lt;- unique(tbtemp)

tb_unique &amp;lt;- unique(dplyr::select(tbtemp, -region))

tbnum_weights &amp;lt;- tb_unique$suming

blueprint &amp;lt;- recipe(perc_women_eng_region ~ ., data = tb_unique) %&amp;gt;%
  step_nzv(all_nominal()) %&amp;gt;%
  step_integer(matches(&amp;quot;Qual|Cond|QC|Qu&amp;quot;)) %&amp;gt;%
  step_center(all_numeric(), -all_outcomes()) %&amp;gt;%
  step_scale(all_numeric(), -all_outcomes()) %&amp;gt;%
  step_dummy(all_nominal(), -all_outcomes(), one_hot = TRUE)

prepare &amp;lt;- prep(blueprint, training = tb_unique)

tbnum &amp;lt;- bake(prepare, new_data = tb_unique)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The dataset only contains 76 rows. This together with multicollinearity limits the number of predictors to include in the regression. I would like to choose the predictors that best contains most information from the dataset with respect to the response.&lt;/p&gt;
&lt;p&gt;I will use an elastic net to find the variable that contains the best signals for later use in the analysis. First I will search for the explanatory variables that best predict the response using no interactions. I will use 10-fold cross-validation with an elastic net. Elastic nets are linear and do not take into account the shape of the relations between the predictors. Alpha = 1 indicates a lasso regression.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;X &amp;lt;- model.matrix(perc_women_eng_region ~ ., tbnum)[, -1]

Y &amp;lt;- tbnum$perc_women_eng_region

set.seed(123)  # for reproducibility
tbnum_glmnet &amp;lt;- caret::train(
    x = X,
    y = Y,
    weights = tbnum_weights,     
    method = &amp;quot;glmnet&amp;quot;,
    preProc = c(&amp;quot;zv&amp;quot;, &amp;quot;center&amp;quot;, &amp;quot;scale&amp;quot;),
    trControl = trainControl(method = &amp;quot;cv&amp;quot;, number = 10),
    tuneLength = 20
)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in nominalTrainWorkflow(x = x, y = y, wts = weights, info = trainInfo, :
## There were missing values in resampled performance measures.&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;vip(tbnum_glmnet, num_features = 20, geom = &amp;quot;point&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-41&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-4-1.png&#34; alt=&#34;Elastic net search on the data using no interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: Elastic net search on the data using no interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum_glmnet$bestTune&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##         alpha       lambda
## 349 0.9052632 0.0002658605&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;elastic_min &amp;lt;- glmnet(
    x = X,
    y = Y,
    alpha = .1
)

plot(elastic_min, xvar = &amp;quot;lambda&amp;quot;, main = &amp;quot;Elastic net penalty\n\n&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-42&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-4-2.png&#34; alt=&#34;Elastic net search on the data using no interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: Elastic net search on the data using no interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;I use MARS to fit the best signals using from the elastic net using no interactions. Four predictors minimise the AIC while still ensuring that the coefficients are valid, testing them with bootstrap.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- dplyr::select(tbnum, c(perc_women_eng_region, regiongroupsize, regioneduyears, eduquotient, sex_men))

mmod_scaled &amp;lt;- earth(perc_women_eng_region ~ ., weights = tbnum_weights, data = temp, nk = 9, degree = 1)

summary (mmod_scaled)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Call: earth(formula=perc_women_eng_region~., data=temp, weights=tbnum_weights,
##             degree=1, nk=9)
## 
##                              coefficients
## (Intercept)                   0.188579073
## sex_men                       0.020170708
## h(0.651904-regiongroupsize)  -0.017635288
## h(regiongroupsize-0.651904)   0.032588077
## h(-0.259811-regioneduyears)  -0.021971561
## h(regioneduyears- -0.259811)  0.021625566
## h(-1.22297-eduquotient)      -0.049922858
## h(eduquotient- -1.22297)      0.009477773
## 
## Selected 8 of 8 terms, and 4 of 4 predictors
## Termination condition: Reached nk 9
## Importance: regiongroupsize, regioneduyears, eduquotient, sex_men
## Weights: 21400, 6800, 11500, 3000, 2400, 500, 7000, 1900, 16000, 4100, 3...
## Number of terms at each degree of interaction: 1 7 (additive model)
## GCV 0.8258677    RSS 40.43492    GRSq 0.8250241    RSq 0.8842515&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot (mmod_scaled)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-51&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-5-1.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors using no interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: Hockey-stick functions fit with MARS for the predictors using no interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plotmo (mmod_scaled)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##  plotmo grid:    regiongroupsize regioneduyears eduquotient sex_men
##                        0.2593006     -0.1394781           0     0.5&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-52&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-5-2.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors using no interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: Hockey-stick functions fit with MARS for the predictors using no interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model_mmod_scale &amp;lt;- lm (perc_women_eng_region ~ 
  sex_men +                        
  lspline(regiongroupsize, c(0.651904)) +
  lspline(regioneduyears, c(-0.259811)) +
  lspline(eduquotient, c(-1.22297)),   
  weights = tbnum_weights,
  data = tbnum) 

model_mmod_scale &amp;lt;- lm (perc_women_eng_region ~ .,
  weights = tbnum_weights,
  data = tbnum)

b &amp;lt;- regsubsets(perc_women_eng_region ~ sex_men + lspline(regiongroupsize, c(0.651904)) + lspline(regioneduyears, c(-0.259811)) + lspline(eduquotient, c(-1.22297)), data = tbnum, weights = tbnum_weights, nvmax = 12)

rs &amp;lt;- summary(b)
AIC &amp;lt;- 50 * log (rs$rss / 50) + (2:8) * 2
which.min (AIC)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 7&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;names (rs$which[7,])[rs$which[7,]]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] &amp;quot;(Intercept)&amp;quot;                           
## [2] &amp;quot;sex_men&amp;quot;                               
## [3] &amp;quot;lspline(regiongroupsize, c(0.651904))1&amp;quot;
## [4] &amp;quot;lspline(regiongroupsize, c(0.651904))2&amp;quot;
## [5] &amp;quot;lspline(regioneduyears, c(-0.259811))1&amp;quot;
## [6] &amp;quot;lspline(regioneduyears, c(-0.259811))2&amp;quot;
## [7] &amp;quot;lspline(eduquotient, c(-1.22297))1&amp;quot;    
## [8] &amp;quot;lspline(eduquotient, c(-1.22297))2&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model_mmod_scale &amp;lt;- lm (perc_women_eng_region ~ 
  sex_men +     
  lspline(regiongroupsize, c(0.651904)) +
  lspline(regioneduyears, c(-0.259811)) +
  lspline(eduquotient, c(-1.22297)), 
  weights = tbnum_weights,
  data = tbnum) 

summary (model_mmod_scale)$adj.r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.8723362&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;AIC(model_mmod_scale)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] -426.1528&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;set.seed(123)
results &amp;lt;- boot(data = tbnum, statistic = bs, 
   R = 1000, formula = as.formula(model_mmod_scale))

#conf = coefficient not passing through zero
summary (model_mmod_scale) %&amp;gt;% tidy() %&amp;gt;% 
  mutate(bootest = tidy(results)$statistic, 
  bootbias = tidy(results)$bias, 
  booterr =  tidy(results)$std.error, 
  conf = !((tidy(confint(results))$X2.5.. &amp;lt; 0) &amp;amp; (tidy(confint(results))$X97.5.. &amp;gt; 0)))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in norm.inter(t, adj.alpha): extreme order statistics used as endpoints&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: &amp;#39;tidy.matrix&amp;#39; is deprecated.
## See help(&amp;quot;Deprecated&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in norm.inter(t, adj.alpha): extreme order statistics used as endpoints&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: &amp;#39;tidy.matrix&amp;#39; is deprecated.
## See help(&amp;quot;Deprecated&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 8 x 9
##   term      estimate std.error statistic  p.value bootest bootbias booterr conf 
##   &amp;lt;chr&amp;gt;        &amp;lt;dbl&amp;gt;     &amp;lt;dbl&amp;gt;     &amp;lt;dbl&amp;gt;    &amp;lt;dbl&amp;gt;   &amp;lt;dbl&amp;gt;    &amp;lt;dbl&amp;gt;   &amp;lt;dbl&amp;gt; &amp;lt;lgl&amp;gt;
## 1 (Interce~  0.244     0.0177      13.8  2.05e-21 0.244    4.73e-3 0.0376  TRUE 
## 2 sex_men    0.0202    0.00509      3.96 1.82e- 4 0.0202   2.44e-3 0.00694 TRUE 
## 3 lspline(~  0.0176    0.00437      4.03 1.42e- 4 0.0176   9.52e-4 0.00560 TRUE 
## 4 lspline(~  0.0326    0.00828      3.94 1.97e- 4 0.0326  -2.36e-3 0.0135  TRUE 
## 5 lspline(~  0.0220    0.00466      4.72 1.23e- 5 0.0220  -3.76e-3 0.00672 TRUE 
## 6 lspline(~  0.0216    0.00490      4.41 3.78e- 5 0.0216   4.59e-4 0.00672 TRUE 
## 7 lspline(~  0.0499    0.0133       3.76 3.56e- 4 0.0499   3.70e-3 0.0293  TRUE 
## 8 lspline(~  0.00948   0.00357      2.66 9.85e- 3 0.00948 -3.47e-3 0.00491 TRUE&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(results, index=1) # intercept &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-53&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-5-3.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors using no interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: Hockey-stick functions fit with MARS for the predictors using no interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;plot_model will show diagnostics for the model, a residual plot, scale location plot, residual density and the regression error characteristic curve. It will also show the residuals versus the actual response to help find outliers. It will plot the feature importance and feature effects. In addition, it will plot how strongly features interact with each other and the 2-way interactions with regiongroupsize and all other features. The interaction measure regards how much of the variance of f(x) is explained by the interaction. The measure is between 0 (no interaction) and 1 (= 100% of variance of f(x) due to interactions). Regiongroupsize is of special interest since it is the feature with the strongest importance to the per cent of engineers who are women in the region.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model &amp;lt;- function(model){
   invisible(capture.output(exp_model &amp;lt;- DALEX::explain(model, data = tbnum, y = tbnum$perc_women_eng_region))) # Knit and DALEX::explain generates invalid rss feed
  
   lm_mr &amp;lt;- model_residual(exp_model)  
    
   predictor &amp;lt;- Predictor$new(model, 
      data = dplyr::select(tbnum, -perc_women_eng_region), 
      y = tbnum$perc_women_eng_region)    
   
   writeLines(&amp;quot;&amp;quot;)
   
   print(paste (&amp;quot;Model RMSE: &amp;quot;, rmse(predict(model), tbnum$perc_women_eng_region)))
 
   p1 &amp;lt;- plot(lm_mr, type = &amp;quot;residual&amp;quot;)  
   
   p2 &amp;lt;- plot(lm_mr, type = &amp;quot;scalelocation&amp;quot;)  
   
   p3 &amp;lt;- plot(lm_mr, type = &amp;quot;residual_density&amp;quot;) 
   
   p4 &amp;lt;- plot(lm_mr, type = &amp;quot;rec&amp;quot;)
   
   print(gridExtra::grid.arrange(p1, p2, p3, p4, ncol = 2))
   
   print(plot_residual(lm_mr, variable = &amp;quot;_y_hat_&amp;quot;, nlabel = 10))
   
   print(plot (FeatureImp$new(predictor, loss = &amp;quot;mae&amp;quot;)))

   print(plot (FeatureEffects$new(predictor)))
   
   p1 &amp;lt;- plot (Interaction$new(predictor)) 
         
   p2 &amp;lt;- plot (Interaction$new(predictor, feature = &amp;quot;regiongroupsize&amp;quot;)) 
   
   print(gridExtra::grid.arrange(p1, p2, ncol = 2))
}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Manual Data fit with Regularized Regression and MARS&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- lm (
  perc_women_eng_region ~ 
     sex_men +                        
     lspline(regiongroupsize, c(0.651904)) +
     lspline(regioneduyears, c(-0.259811)) +
     lspline(eduquotient, c(-1.22297)),   
  weights = tbnum_weights,
  data = tbnum) 

plot_model(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## [1] &amp;quot;Model RMSE:  0.0119381601517971&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-71&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-7-1.png&#34; alt=&#34;Manual Data fit with Regularized Regression and MARS, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: Manual Data fit with Regularized Regression and MARS, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-72&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-7-2.png&#34; alt=&#34;Manual Data fit with Regularized Regression and MARS, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: Manual Data fit with Regularized Regression and MARS, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-73&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-7-3.png&#34; alt=&#34;Manual Data fit with Regularized Regression and MARS, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: Manual Data fit with Regularized Regression and MARS, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;patchwork&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:MASS&amp;#39;:
## 
##     area&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-74&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-7-4.png&#34; alt=&#34;Manual Data fit with Regularized Regression and MARS, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: Manual Data fit with Regularized Regression and MARS, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-75&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-7-5.png&#34; alt=&#34;Manual Data fit with Regularized Regression and MARS, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 10: Manual Data fit with Regularized Regression and MARS, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Data fit with Regularized Regression&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;X &amp;lt;- model.matrix(perc_women_eng_region ~ ., tbnum)[, -1]

Y &amp;lt;- tbnum$perc_women_eng_region

set.seed(123)  # for reproducibility
model &amp;lt;- caret::train(
    x = X,
    y = Y,
    weights = tbnum_weights,     
    method = &amp;quot;glmnet&amp;quot;,
    preProc = c(&amp;quot;zv&amp;quot;, &amp;quot;center&amp;quot;, &amp;quot;scale&amp;quot;),
    trControl = trainControl(method = &amp;quot;cv&amp;quot;, number = 10),
    tuneLength = 20
)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in nominalTrainWorkflow(x = x, y = y, wts = weights, info = trainInfo, :
## There were missing values in resampled performance measures.&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## [1] &amp;quot;Model RMSE:  0.0115236920245644&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-81&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-8-1.png&#34; alt=&#34;Data fit with Regularized Regression, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 11: Data fit with Regularized Regression, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-82&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-8-2.png&#34; alt=&#34;Data fit with Regularized Regression, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 12: Data fit with Regularized Regression, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-83&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-8-3.png&#34; alt=&#34;Data fit with Regularized Regression, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 13: Data fit with Regularized Regression, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-84&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-8-4.png&#34; alt=&#34;Data fit with Regularized Regression, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 14: Data fit with Regularized Regression, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-85&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-8-5.png&#34; alt=&#34;Data fit with Regularized Regression, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 15: Data fit with Regularized Regression, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Data fit with Multivariate Adaptive Regression Splines&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;hyper_grid &amp;lt;- expand.grid(
  degree = 1, 
  nprune = seq(2, 100, length.out = 10) %&amp;gt;% floor()
)

set.seed(123)  # for reproducibility
model &amp;lt;- caret::train(
  x = data.frame(subset(tbnum, select = -perc_women_eng_region)),
  y = tbnum$perc_women_eng_region,
  method = &amp;quot;earth&amp;quot;,
  weights = tbnum_weights,
  trControl = trainControl(method = &amp;quot;cv&amp;quot;, number = 10),
  tuneGrid = hyper_grid
)

plot_model(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in if (class(response) == &amp;quot;data.frame&amp;quot;) response &amp;lt;- as.matrix(response):
## the condition has length &amp;gt; 1 and only the first element will be used

## Warning in if (class(response) == &amp;quot;data.frame&amp;quot;) response &amp;lt;- as.matrix(response):
## the condition has length &amp;gt; 1 and only the first element will be used&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## [1] &amp;quot;Model RMSE:  0.00915463662070812&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-91&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-9-1.png&#34; alt=&#34;Data fit with Multivariate Adaptive Regression Splines, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 16: Data fit with Multivariate Adaptive Regression Splines, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-92&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-9-2.png&#34; alt=&#34;Data fit with Multivariate Adaptive Regression Splines, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 17: Data fit with Multivariate Adaptive Regression Splines, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-93&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-9-3.png&#34; alt=&#34;Data fit with Multivariate Adaptive Regression Splines, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 18: Data fit with Multivariate Adaptive Regression Splines, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-94&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-9-4.png&#34; alt=&#34;Data fit with Multivariate Adaptive Regression Splines, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 19: Data fit with Multivariate Adaptive Regression Splines, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-95&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-9-5.png&#34; alt=&#34;Data fit with Multivariate Adaptive Regression Splines, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 20: Data fit with Multivariate Adaptive Regression Splines, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Data fit with decision tree bag&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;set.seed(123)
model &amp;lt;- caret::train(
  perc_women_eng_region ~ .,
  data = tbnum,
  method = &amp;quot;treebag&amp;quot;,
  weights = tbnum_weights,  
  trControl = trainControl(method = &amp;quot;cv&amp;quot;, number = 10),
  nbagg = 50,  
  control = rpart.control(minsplit = 2, cp = 0)
)

plot_model(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## [1] &amp;quot;Model RMSE:  0.00341044239371977&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-101&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-10-1.png&#34; alt=&#34;Data fit with decision tree bag, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 21: Data fit with decision tree bag, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-102&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-10-2.png&#34; alt=&#34;Data fit with decision tree bag, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 22: Data fit with decision tree bag, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-103&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-10-3.png&#34; alt=&#34;Data fit with decision tree bag, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 23: Data fit with decision tree bag, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-104&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-10-4.png&#34; alt=&#34;Data fit with decision tree bag, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 24: Data fit with decision tree bag, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-105&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-10-5.png&#34; alt=&#34;Data fit with decision tree bag, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 25: Data fit with decision tree bag, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Data fit with Random Forest&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;set.seed(123)
invisible(capture.output(model &amp;lt;- caret::train(
   perc_women_eng_region  ~ ., 
   data = tbnum,
   weights = tbnum_weights,
   method = &amp;quot;ranger&amp;quot;,
   trControl = trainControl(method = &amp;quot;cv&amp;quot;, number = 5, verboseIter = T, classProbs = T),
   num.trees = 100,
   importance = &amp;quot;permutation&amp;quot;)))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in train.default(x, y, weights = w, ...): cannnot compute class
## probabilities for regression&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## [1] &amp;quot;Model RMSE:  0.00876237694751394&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-111&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-11-1.png&#34; alt=&#34;Data fit with Random Forest, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 26: Data fit with Random Forest, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-112&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-11-2.png&#34; alt=&#34;Data fit with Random Forest, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 27: Data fit with Random Forest, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-113&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-11-3.png&#34; alt=&#34;Data fit with Random Forest, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 28: Data fit with Random Forest, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-114&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-11-4.png&#34; alt=&#34;Data fit with Random Forest, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 29: Data fit with Random Forest, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-115&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-11-5.png&#34; alt=&#34;Data fit with Random Forest, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 30: Data fit with Random Forest, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Data fit with Gradient Boosting Machine&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tr &amp;lt;- trainControl(method = &amp;quot;repeatedcv&amp;quot;, number = 10, repeats = 5)

tg &amp;lt;- expand.grid(shrinkage = seq(0.1), 
   interaction.depth = c(3),
   n.minobsinnode = c(10),
   n.trees = c(100))

set.seed(123)
model &amp;lt;- caret::train(
   perc_women_eng_region ~ ., 
   data = tbnum, 
   weights = tbnum_weights,
   method = &amp;quot;gbm&amp;quot;, 
   trControl = tr, 
   tuneGrid = tg, 
   verbose = FALSE)

plot_model(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## [1] &amp;quot;Model RMSE:  0.00352511569538881&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-121&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-12-1.png&#34; alt=&#34;Data fit with Gradient Boosting Machine, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 31: Data fit with Gradient Boosting Machine, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-122&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-12-2.png&#34; alt=&#34;Data fit with Gradient Boosting Machine, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 32: Data fit with Gradient Boosting Machine, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-123&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-12-3.png&#34; alt=&#34;Data fit with Gradient Boosting Machine, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 33: Data fit with Gradient Boosting Machine, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-124&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-12-4.png&#34; alt=&#34;Data fit with Gradient Boosting Machine, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 34: Data fit with Gradient Boosting Machine, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-125&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-12-5.png&#34; alt=&#34;Data fit with Gradient Boosting Machine, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 35: Data fit with Gradient Boosting Machine, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Data fit with Deep Learning&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;rctrl1 &amp;lt;- trainControl(method = &amp;quot;cv&amp;quot;, number = 3, returnResamp = &amp;quot;all&amp;quot;)

set.seed(123)  # for reproducibility
model &amp;lt;- caret::train(
   perc_women_eng_region ~ ., 
   data = tbnum, 
   weights = tbnum_weights,
   method = &amp;quot;neuralnet&amp;quot;, 
   trControl = rctrl1,
   tuneGrid = data.frame(layer1 = 2:20, layer2 = 2:20, layer3 = 2:20),
   rep = 3,
   threshold = 0.0001,
   preProc = c(&amp;quot;center&amp;quot;, &amp;quot;scale&amp;quot;))

plot_model(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## [1] &amp;quot;Model RMSE:  0.00924842751296535&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-131&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-13-1.png&#34; alt=&#34;Data fit with Deep Learning, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 36: Data fit with Deep Learning, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-132&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-13-2.png&#34; alt=&#34;Data fit with Deep Learning, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 37: Data fit with Deep Learning, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-133&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-13-3.png&#34; alt=&#34;Data fit with Deep Learning, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 38: Data fit with Deep Learning, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-134&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-13-4.png&#34; alt=&#34;Data fit with Deep Learning, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 39: Data fit with Deep Learning, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-135&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-13-5.png&#34; alt=&#34;Data fit with Deep Learning, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 40: Data fit with Deep Learning, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Data fit with Support Vector Machine&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;set.seed(123)  # for reproducibility
model &amp;lt;- caret::train(
  perc_women_eng_region ~ ., 
  data = tbnum,
  weights = tbnum_weights,  
  method = &amp;quot;svmRadial&amp;quot;,
  preProcess = c(&amp;quot;center&amp;quot;, &amp;quot;scale&amp;quot;),  
  trControl = trainControl(method = &amp;quot;cv&amp;quot;, number = 10),
  tuneLength = 10
)

plot_model(model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## [1] &amp;quot;Model RMSE:  0.00848330404577974&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-141&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-14-1.png&#34; alt=&#34;Data fit with Support Vector Machine, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 41: Data fit with Support Vector Machine, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 2) &amp;quot;arrange&amp;quot;: 4 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]
## 3 3 (2-2,1-1) arrange gtable[layout]
## 4 4 (2-2,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-142&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-14-2.png&#34; alt=&#34;Data fit with Support Vector Machine, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 42: Data fit with Support Vector Machine, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-143&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-14-3.png&#34; alt=&#34;Data fit with Support Vector Machine, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 43: Data fit with Support Vector Machine, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-144&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-14-4.png&#34; alt=&#34;Data fit with Support Vector Machine, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 44: Data fit with Support Vector Machine, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-145&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-26-engineers-in-sweden-who-are-women-feature-importance_files/figure-html/unnamed-chunk-14-5.png&#34; alt=&#34;Data fit with Support Vector Machine, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 45: Data fit with Support Vector Machine, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (1 x 2) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (1-1,2-2) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
</description>
    </item>
    
    <item>
      <title>Engineering salaries revisited</title>
      <link>http://mikaellundqvist.rbind.io/2020/04/16/engineering-salaries-revisited/</link>
      <pubDate>Thu, 16 Apr 2020 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2020/04/16/engineering-salaries-revisited/</guid>
      <description>


&lt;p&gt;For a couple of posts, I have analysed what predictors affect the education level in Sweden. In this post, I will return to analysing the salary of engineers and I will try to use my experiences from studying the education level.&lt;/p&gt;
&lt;p&gt;Statistics Sweden use NUTS (Nomenclature des Unités Territoriales Statistiques), which is the EU’s hierarchical regional division, to specify the regions.&lt;/p&gt;
&lt;p&gt;Please send suggestions for improvement of the analysis to &lt;a href=&#34;mailto:ranalystatisticssweden@gmail.com&#34; class=&#34;email&#34;&gt;ranalystatisticssweden@gmail.com&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages -------------------------------------------------- tidyverse 1.3.0 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.2.1     v purrr   0.3.3
## v tibble  2.1.3     v dplyr   0.8.3
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.4.0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ----------------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (broom)
library (car)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (sjPlot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Registered S3 methods overwritten by &amp;#39;lme4&amp;#39;:
##   method                          from
##   cooks.distance.influence.merMod car 
##   influence.merMod                car 
##   dfbeta.influence.merMod         car 
##   dfbetas.influence.merMod        car&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (leaps)
library (MASS)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;MASS&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     select&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (earth)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;earth&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: Formula&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: plotmo&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;plotmo&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: plotrix&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: TeachingDemos&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;TeachingDemos&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (lspline)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;lspline&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (boot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;boot&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:car&amp;#39;:
## 
##     logit&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (faraway)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;faraway&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:boot&amp;#39;:
## 
##     logit, melanoma&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:car&amp;#39;:
## 
##     logit, vif&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (arm)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;arm&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: Matrix&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;Matrix&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:tidyr&amp;#39;:
## 
##     expand, pack, unpack&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: lme4&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## arm (Version 1.10-1, built: 2018-4-12)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Working directory is C:/R/rblog/content/post&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;arm&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:faraway&amp;#39;:
## 
##     fround, logit, pfround&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:boot&amp;#39;:
## 
##     logit&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:plotrix&amp;#39;:
## 
##     rescale&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:car&amp;#39;:
## 
##     logit&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (caret)    &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;caret&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: lattice&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;lattice&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:faraway&amp;#39;:
## 
##     melanoma&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:boot&amp;#39;:
## 
##     melanoma&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;caret&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     lift&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (recipes)  &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;recipes&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;recipes&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:stringr&amp;#39;:
## 
##     fixed&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:stats&amp;#39;:
## 
##     step&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (vip)         &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;vip&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;vip&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:utils&amp;#39;:
## 
##     vi&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (pdp)         &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;pdp&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;pdp&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:faraway&amp;#39;:
## 
##     pima&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     partial&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (PerformanceAnalytics)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;PerformanceAnalytics&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: xts&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: zoo&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;zoo&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:base&amp;#39;:
## 
##     as.Date, as.Date.numeric&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;xts&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     first, last&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;PerformanceAnalytics&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:graphics&amp;#39;:
## 
##     legend&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (ggpubr)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;ggpubr&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: magrittr&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;magrittr&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     set_names&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:tidyr&amp;#39;:
## 
##     extract&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (glmnet)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;glmnet&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loaded glmnet 3.0-2&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (rpart)       &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;rpart&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:faraway&amp;#39;:
## 
##     solder&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (ipred)       &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;ipred&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;readfile &amp;lt;- function (file1){read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%
  gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = groupsize) %&amp;gt;%
  drop_na() %&amp;gt;%
  mutate (year_n = parse_number (year))
}

perc_women &amp;lt;- function(x){  
  ifelse (length(x) == 2, x[2] / (x[1] + x[2]), NA)
} 

nuts &amp;lt;- read.csv(&amp;quot;nuts.csv&amp;quot;) %&amp;gt;%
  mutate(NUTS2_sh = substr(NUTS2, 3, 4))

nuts %&amp;gt;% 
  distinct (NUTS2_en) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Nomenclature des Unités Territoriales Statistiques (NUTS)&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-1&#34;&gt;Table 1: &lt;/span&gt;Nomenclature des Unités Territoriales Statistiques (NUTS)&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;NUTS2_en&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE11 Stockholm&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE12 East-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE21 Småland and islands&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE22 South Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE23 West Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE31 North-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE32 Central Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE33 Upper Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;bs &amp;lt;- function(formula, data, indices) {
  d &amp;lt;- data[indices,] # allows boot to select sample 
  fit &amp;lt;- lm(formula, weights = tbnum_weights, data=d)
  return(coef(fit)) 
} &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data tables are downloaded from Statistics Sweden. They are saved as a comma-delimited file without heading, UF0506A1.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The tables:&lt;/p&gt;
&lt;p&gt;UF0506A1_1.csv: Population 16-74 years of age by region, highest level of education, age and sex. Year 1985 - 2018 NUTS 2 level 2008- 10 year intervals (16-74)&lt;/p&gt;
&lt;p&gt;000000CG_1: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2018 Monthly salary All sectors.&lt;/p&gt;
&lt;p&gt;000000CD_1.csv: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2018 Number of employees All sectors-&lt;/p&gt;
&lt;p&gt;The data is aggregated, the size of each group is in the column groupsize.&lt;/p&gt;
&lt;p&gt;I have also included some calculated predictors from the original data.&lt;/p&gt;
&lt;p&gt;perc_women: The percentage of women within each group defined by edulevel, region and year&lt;/p&gt;
&lt;p&gt;perc_women_region: The percentage of women within each group defined by year and region&lt;/p&gt;
&lt;p&gt;regioneduyears: The average number of education years per capita within each group defined by sex, year and region&lt;/p&gt;
&lt;p&gt;eduquotient: The quotient between regioneduyears for men and women&lt;/p&gt;
&lt;p&gt;salaryquotient: The quotient between salary for men and women within each group defined by year and region&lt;/p&gt;
&lt;p&gt;perc_women_eng_region: The percentage of women who are engineers within each group defined by year and region&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;numedulevel &amp;lt;- read.csv(&amp;quot;edulevel_1.csv&amp;quot;) 

numedulevel[, 2] &amp;lt;- data.frame(c(8, 9, 10, 12, 13, 15, 22, NA))

tb &amp;lt;- readfile(&amp;quot;000000CG_1.csv&amp;quot;) 
tb &amp;lt;- readfile(&amp;quot;000000CD_1.csv&amp;quot;) %&amp;gt;% 
  left_join(tb, by = c(&amp;quot;region&amp;quot;, &amp;quot;year&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;,&amp;quot;occuptional  (SSYK 2012)&amp;quot;)) %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;214 Engineering professionals&amp;quot;) 

tb &amp;lt;- readfile(&amp;quot;UF0506A1_1.csv&amp;quot;) %&amp;gt;%  
  right_join(tb, by = c(&amp;quot;region&amp;quot;, &amp;quot;year&amp;quot;, &amp;quot;sex&amp;quot;)) %&amp;gt;%
  right_join(numedulevel, by = c(&amp;quot;level of education&amp;quot; = &amp;quot;level.of.education&amp;quot;)) %&amp;gt;%
  filter(!is.na(eduyears)) %&amp;gt;%  
  mutate(edulevel = `level of education`) %&amp;gt;%
  group_by(edulevel, region, year, sex) %&amp;gt;%
  mutate(groupsize_all_ages = sum(groupsize)) %&amp;gt;%  
  group_by(edulevel, region, year) %&amp;gt;% 
  mutate (perc_women = perc_women (groupsize_all_ages[1:2])) %&amp;gt;% 
  group_by (sex, year, region) %&amp;gt;%
  mutate(regioneduyears = sum(groupsize * eduyears) / sum(groupsize)) %&amp;gt;%
  mutate(regiongroupsize = sum(groupsize)) %&amp;gt;% 
  mutate(suming = groupsize.x) %&amp;gt;%
  group_by(region, year) %&amp;gt;%
  mutate (sum_pop = sum(groupsize)) %&amp;gt;%
  mutate (perc_women_region = perc_women (regiongroupsize[1:2])) %&amp;gt;% 
  mutate (eduquotient = regioneduyears[2] / regioneduyears[1]) %&amp;gt;% 
  mutate (salary = groupsize.y) %&amp;gt;%
  mutate (salaryquotient = salary[2] / salary[1]) %&amp;gt;%   
  mutate (perc_women_eng_region = perc_women(suming[1:2])) %&amp;gt;%  
  left_join(nuts %&amp;gt;% distinct (NUTS2_en, NUTS2_sh), by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) %&amp;gt;%
  drop_na()&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `level of education`/`level.of.education` joining character
## vector and factor, coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `region`/`NUTS2_en` joining character vector and factor,
## coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(tb)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##     region              age            level of education     sex           
##  Length:532         Length:532         Length:532         Length:532        
##  Class :character   Class :character   Class :character   Class :character  
##  Mode  :character   Mode  :character   Mode  :character   Mode  :character  
##                                                                             
##                                                                             
##                                                                             
##      year             groupsize          year_n        sector         
##  Length:532         Min.   :   405   Min.   :2014   Length:532        
##  Class :character   1st Qu.: 20996   1st Qu.:2015   Class :character  
##  Mode  :character   Median : 43656   Median :2016   Mode  :character  
##                     Mean   : 64760   Mean   :2016                     
##                     3rd Qu.:102394   3rd Qu.:2017                     
##                     Max.   :271889   Max.   :2018                     
##  occuptional  (SSYK 2012)  groupsize.x       year_n.x     groupsize.y   
##  Length:532               Min.   :  340   Min.   :2014   Min.   :34700  
##  Class :character         1st Qu.: 1700   1st Qu.:2015   1st Qu.:40300  
##  Mode  :character         Median : 3000   Median :2016   Median :42000  
##                           Mean   : 5850   Mean   :2016   Mean   :42078  
##                           3rd Qu.: 7475   3rd Qu.:2017   3rd Qu.:43925  
##                           Max.   :21400   Max.   :2018   Max.   :49400  
##     year_n.y       eduyears       edulevel         groupsize_all_ages
##  Min.   :2014   Min.   : 8.00   Length:532         Min.   :   405    
##  1st Qu.:2015   1st Qu.: 9.00   Class :character   1st Qu.: 20996    
##  Median :2016   Median :12.00   Mode  :character   Median : 43656    
##  Mean   :2016   Mean   :12.71                      Mean   : 64760    
##  3rd Qu.:2017   3rd Qu.:15.00                      3rd Qu.:102394    
##  Max.   :2018   Max.   :22.00                      Max.   :271889    
##    perc_women     regioneduyears  regiongroupsize      suming     
##  Min.   :0.3575   Min.   :11.18   Min.   :128262   Min.   :  340  
##  1st Qu.:0.4338   1st Qu.:11.61   1st Qu.:288058   1st Qu.: 1700  
##  Median :0.4631   Median :11.74   Median :514608   Median : 3000  
##  Mean   :0.4771   Mean   :11.79   Mean   :453318   Mean   : 5850  
##  3rd Qu.:0.5132   3rd Qu.:12.04   3rd Qu.:691870   3rd Qu.: 7475  
##  Max.   :0.6423   Max.   :12.55   Max.   :827940   Max.   :21400  
##     sum_pop        perc_women_region  eduquotient        salary     
##  Min.   : 262870   Min.   :0.4831    Min.   :1.019   Min.   :34700  
##  1st Qu.: 587142   1st Qu.:0.4882    1st Qu.:1.029   1st Qu.:40300  
##  Median :1029820   Median :0.4934    Median :1.034   Median :42000  
##  Mean   : 906635   Mean   :0.4923    Mean   :1.034   Mean   :42078  
##  3rd Qu.:1395157   3rd Qu.:0.4970    3rd Qu.:1.041   3rd Qu.:43925  
##  Max.   :1655215   Max.   :0.5014    Max.   :1.047   Max.   :49400  
##  salaryquotient   perc_women_eng_region   NUTS2_sh        
##  Min.   :0.8653   Min.   :0.1566        Length:532        
##  1st Qu.:0.9329   1st Qu.:0.1787        Class :character  
##  Median :0.9395   Median :0.2042        Mode  :character  
##  Mean   :0.9447   Mean   :0.2039                          
##  3rd Qu.:0.9537   3rd Qu.:0.2216                          
##  Max.   :1.0446   Max.   :0.2746&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Prepare the data using Tidyverse recipes package, i.e. centre, scale and make sure all predictors are numerical.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbtemp &amp;lt;- ungroup(tb) %&amp;gt;% dplyr::select(region, salary, year_n, regiongroupsize, sex, regioneduyears, suming, perc_women_region, salaryquotient, eduquotient, perc_women_eng_region)

tb_outliers_info &amp;lt;- unique(tbtemp)

tb_unique &amp;lt;- unique(dplyr::select(tbtemp, -region))

tbnum_weights &amp;lt;- tb_unique$suming

blueprint &amp;lt;- recipe(salary ~ ., data = tb_unique) %&amp;gt;%
  step_nzv(all_nominal()) %&amp;gt;%
  step_integer(matches(&amp;quot;Qual|Cond|QC|Qu&amp;quot;)) %&amp;gt;%
  step_center(all_numeric(), -all_outcomes()) %&amp;gt;%
  step_scale(all_numeric(), -all_outcomes()) %&amp;gt;%
  step_dummy(all_nominal(), -all_outcomes(), one_hot = TRUE)

prepare &amp;lt;- prep(blueprint, training = tb_unique)

tbnum &amp;lt;- bake(prepare, new_data = tb_unique)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The correlation chart shows that many predictors are correlated with the response variable but also that many predictors are correlated between each other. The vif function also shows high multicollinearity. Some notable correlations are in a dedicated plot below.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;chart.Correlation(tbnum, histogram = TRUE, pch = 19)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-41&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-4-1.png&#34; alt=&#34;Correlation between response and predictors and between predictors, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: Correlation between response and predictors and between predictors, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;vif(tbnum)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in summary.lm(lm(object[, i] ~ object[, -i])): essentially perfect fit:
## summary may be unreliable

## Warning in summary.lm(lm(object[, i] ~ object[, -i])): essentially perfect fit:
## summary may be unreliable&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##                year_n       regiongroupsize        regioneduyears 
##              4.665634             21.810910             14.478685 
##                suming     perc_women_region        salaryquotient 
##              8.688599              8.259497              1.382593 
##           eduquotient perc_women_eng_region                salary 
##             12.400845              8.141404              8.359112 
##               sex_men             sex_women 
##                   Inf                   Inf&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;p1 &amp;lt;- tb %&amp;gt;%
  ggscatter(x = &amp;quot;regiongroupsize&amp;quot;, y = &amp;quot;perc_women_region&amp;quot;, 
    add = &amp;quot;reg.line&amp;quot;, conf.int = TRUE, 
    cor.coef = TRUE, cor.method = &amp;quot;pearson&amp;quot;) 

p2 &amp;lt;- tb %&amp;gt;%
  ggscatter(x = &amp;quot;regiongroupsize&amp;quot;, y = &amp;quot;perc_women_eng_region&amp;quot;, 
    add = &amp;quot;reg.line&amp;quot;, conf.int = TRUE, 
    cor.coef = TRUE, cor.method = &amp;quot;pearson&amp;quot;) 

p3 &amp;lt;- tb %&amp;gt;%
  ggscatter(x = &amp;quot;regiongroupsize&amp;quot;, y = &amp;quot;eduquotient&amp;quot;, 
    add = &amp;quot;reg.line&amp;quot;, conf.int = TRUE, 
    cor.coef = TRUE, cor.method = &amp;quot;pearson&amp;quot;) 

p4 &amp;lt;- tb %&amp;gt;%
  ggscatter(x = &amp;quot;perc_women_region&amp;quot;, y = &amp;quot;eduquotient&amp;quot;, 
    add = &amp;quot;reg.line&amp;quot;, conf.int = TRUE, 
    cor.coef = TRUE, cor.method = &amp;quot;pearson&amp;quot;) 

gridExtra::grid.arrange(p1, p2, p3, p4, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-42&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-4-2.png&#34; alt=&#34;Correlation between response and predictors and between predictors, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: Correlation between response and predictors and between predictors, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;The dataset only contains 76 rows. This together with multicollinearity limits the number of predictors to include in the regression. I would like to choose the predictors that best contains most information from the dataset with respect to the response.&lt;/p&gt;
&lt;p&gt;I will use an elastic net to find the variable that contains the best signals for later use in the analysis. First I will search for the explanatory variables that best predict the response using no interactions. I will use 10-fold cross-validation with an elastic net. Elastic nets are linear and do not take into account the shape of the relations between the predictors. Alpha = 1 indicates a lasso regression.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;X &amp;lt;- model.matrix(salary ~ ., tbnum)[, -1]

Y &amp;lt;- tbnum$salary

set.seed(123)  # for reproducibility
cv_glmnet &amp;lt;- train(
    x = X,
    y = Y,
    weights = tbnum_weights,     
    method = &amp;quot;glmnet&amp;quot;,
    preProc = c(&amp;quot;zv&amp;quot;, &amp;quot;center&amp;quot;, &amp;quot;scale&amp;quot;),
    trControl = trainControl(method = &amp;quot;cv&amp;quot;, number = 10),
    tuneLength = 20
)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in nominalTrainWorkflow(x = x, y = y, wts = weights, info = trainInfo, :
## There were missing values in resampled performance measures.&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;vip(cv_glmnet, num_features = 20, geom = &amp;quot;point&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-51&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-5-1.png&#34; alt=&#34;Elastic net search on the data using no interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: Elastic net search on the data using no interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;cv_glmnet$bestTune&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##     alpha   lambda
## 371     1 49.48132&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;elastic_min &amp;lt;- glmnet(
    x = X,
    y = Y,
    alpha = 1
)

plot(elastic_min, xvar = &amp;quot;lambda&amp;quot;, main = &amp;quot;Elastic net penalty\n\n&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-52&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-5-2.png&#34; alt=&#34;Elastic net search on the data using no interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: Elastic net search on the data using no interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Next, I will use an elastic net to find the variable that contains the best signals including interactions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- dplyr::select(tbnum, -salary)

f &amp;lt;- as.formula( ~ .*.)
X &amp;lt;- model.matrix(f, temp)[, -1]

Y &amp;lt;- tbnum$salary

set.seed(123)  # for reproducibility
cv_glmnet &amp;lt;- train(
    x = X,
    y = Y,
    weights = tbnum_weights,     
    method = &amp;quot;glmnet&amp;quot;,
    metric = &amp;quot;Rsquared&amp;quot;,
    maximize = TRUE,
    preProc = c(&amp;quot;zv&amp;quot;, &amp;quot;center&amp;quot;, &amp;quot;scale&amp;quot;),
    trControl = trainControl(method = &amp;quot;cv&amp;quot;, number = 10),
    tuneLength = 30
)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in nominalTrainWorkflow(x = x, y = y, wts = weights, info = trainInfo, :
## There were missing values in resampled performance measures.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in train.default(x = X, y = Y, weights = tbnum_weights, method =
## &amp;quot;glmnet&amp;quot;, : missing values found in aggregated results&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;vip(cv_glmnet, num_features = 20, geom = &amp;quot;point&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-61&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-6-1.png&#34; alt=&#34;Elastic net search on the data including interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: Elastic net search on the data including interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;cv_glmnet$bestTune&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##         alpha   lambda
## 758 0.8758621 4.280173&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;elastic_min &amp;lt;- glmnet(
    x = X,
    y = Y,
    alpha = 0.9
)

plot(elastic_min, xvar = &amp;quot;lambda&amp;quot;, main = &amp;quot;Elastic net penalty\n\n&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-62&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-6-2.png&#34; alt=&#34;Elastic net search on the data including interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: Elastic net search on the data including interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;I use MARS to fit the best signals using from the elastic net using no interactions. Four predictors minimise the AIC while still ensuring that the coefficients are valid, testing them with bootstrap.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- dplyr::select(tbnum, c(salary, year_n, sex_men, perc_women_region, suming))

mmod_scaled &amp;lt;- earth(salary ~ ., weights = tbnum_weights, data = temp, nk = 9, degree = 1)

summary (mmod_scaled)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Call: earth(formula=salary~., data=temp, weights=tbnum_weights, degree=1, nk=9)
## 
##                               coefficients
## (Intercept)                      40889.888
## sex_men                           1684.691
## h(0-year_n)                       -884.328
## h(year_n-0)                       1673.931
## h(0.311813-perc_women_region)    -1249.276
## h(perc_women_region-0.311813)     1754.546
## h(suming- -0.549566)               553.529
## 
## Selected 7 of 8 terms, and 4 of 4 predictors
## Termination condition: Reached nk 9
## Importance: suming, year_n, perc_women_region, sex_men
## Weights: 21400, 6800, 11500, 3000, 2400, 500, 7000, 1900, 16000, 4100, 3...
## Number of terms at each degree of interaction: 1 6 (additive model)
## GCV 3373591806    RSS 176181393125    GRSq 0.9000639    RSq 0.9294851&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot (mmod_scaled)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-71&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-7-1.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors using no interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: Hockey-stick functions fit with MARS for the predictors using no interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plotmo (mmod_scaled)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##  plotmo grid:    year_n sex_men perc_women_region     suming
##                       0     0.5         0.2069953 -0.4539968&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-72&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-7-2.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors using no interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: Hockey-stick functions fit with MARS for the predictors using no interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model_mmod_scale &amp;lt;- lm (salary ~ 
  sex_men +                        
  lspline(year_n, c(0)) +
  lspline(perc_women_region, c(0.311813)) +
  lspline(suming, c(-0.549566)),   
  weights = tbnum_weights,
  data = tbnum) 

b &amp;lt;- regsubsets(salary ~ sex_men + lspline(year_n, c(0)) + lspline(perc_women_region, c(0.311813)) + lspline(suming, c(-0.549566)) + lspline(suming, c(-1.22297)), data = tbnum, weights = tbnum_weights, nvmax = 12)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in leaps.setup(x, y, wt = wt, nbest = nbest, nvmax = nvmax, force.in =
## force.in, : 2 linear dependencies found&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in leaps.setup(x, y, wt = wt, nbest = nbest, nvmax = nvmax, force.in =
## force.in, : nvmax reduced to 7&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;rs &amp;lt;- summary(b)
AIC &amp;lt;- 50 * log (rs$rss / 50) + (2:8) * 2
which.min (AIC)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 6&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;names (rs$which[6,])[rs$which[6,]]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] &amp;quot;(Intercept)&amp;quot;                             
## [2] &amp;quot;sex_men&amp;quot;                                 
## [3] &amp;quot;lspline(year_n, c(0))1&amp;quot;                  
## [4] &amp;quot;lspline(year_n, c(0))2&amp;quot;                  
## [5] &amp;quot;lspline(perc_women_region, c(0.311813))1&amp;quot;
## [6] &amp;quot;lspline(perc_women_region, c(0.311813))2&amp;quot;
## [7] &amp;quot;lspline(suming, c(-1.22297))2&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model_mmod_scale &amp;lt;- lm (salary ~ 
  sex_men +                        
  lspline(year_n, c(0)) +
  lspline(perc_women_region, c(0.311813)) +
  lspline(suming, c(-0.549566)),
  weights = tbnum_weights,
  data = tbnum) 

summary (model_mmod_scale)$adj.r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.9244956&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;AIC(model_mmod_scale)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 1258.423&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;set.seed(123)
results &amp;lt;- boot(data = tbnum, statistic = bs, 
   R = 1000, formula = as.formula(model_mmod_scale))

#conf = coefficient not passing through zero
summary (model_mmod_scale) %&amp;gt;% tidy() %&amp;gt;% 
  mutate(bootest = tidy(results)$statistic, 
  bootbias = tidy(results)$bias, 
  booterr =  tidy(results)$std.error, 
  conf = !((tidy(confint(results))$X2.5.. &amp;lt; 0) &amp;amp; (tidy(confint(results))$X97.5.. &amp;gt; 0)))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in norm.inter(t, adj.alpha): extreme order statistics used as endpoints&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: &amp;#39;tidy.matrix&amp;#39; is deprecated.
## See help(&amp;quot;Deprecated&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in norm.inter(t, adj.alpha): extreme order statistics used as endpoints&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: &amp;#39;tidy.matrix&amp;#39; is deprecated.
## See help(&amp;quot;Deprecated&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 8 x 9
##   term      estimate std.error statistic  p.value bootest bootbias booterr conf 
##   &amp;lt;chr&amp;gt;        &amp;lt;dbl&amp;gt;     &amp;lt;dbl&amp;gt;     &amp;lt;dbl&amp;gt;    &amp;lt;dbl&amp;gt;   &amp;lt;dbl&amp;gt;    &amp;lt;dbl&amp;gt;   &amp;lt;dbl&amp;gt; &amp;lt;lgl&amp;gt;
## 1 (Interce~   42276.     1260.     33.6  4.85e-44  42276.   -105.    1344. TRUE 
## 2 sex_men      1502.      299.      5.02 4.02e- 6   1502.     27.6    428. TRUE 
## 3 lspline(~     868.      164.      5.31 1.32e- 6    868.    -78.3    354. TRUE 
## 4 lspline(~    1656.      159.     10.4  9.25e-16   1656.     58.4    352. TRUE 
## 5 lspline(~    1049.      274.      3.82 2.88e- 4   1049.    146.     327. TRUE 
## 6 lspline(~    1719.      161.     10.7  3.31e-16   1719.   -155.     265. TRUE 
## 7 lspline(~    2979.     2084.      1.43 1.57e- 1   2979.   -264.    2216. FALSE
## 8 lspline(~     603.      129.      4.66 1.52e- 5    603.    -42.0    204. TRUE&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(results, index=1) # intercept &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-73&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-7-3.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors using no interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: Hockey-stick functions fit with MARS for the predictors using no interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;I will include the interaction between sex_men and salaryquotient. If I include more terms from MARS I judge that the predictions are getting unstable testing with bootstrap.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;# The three best candidates from the elastic net search
model_mmod_scale &amp;lt;- lm (salary ~ 
  year_n +
  perc_women_region +
  year_n:perc_women_region,
  weights = tbnum_weights,
  data = tbnum) 

summary (model_mmod_scale)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Call:
## lm(formula = salary ~ year_n + perc_women_region + year_n:perc_women_region, 
##     data = tbnum, weights = tbnum_weights)
## 
## Weighted Residuals:
##     Min      1Q  Median      3Q     Max 
## -210878  -73763  -29626   45157  267181 
## 
## Coefficients:
##                          Estimate Std. Error t value Pr(&amp;gt;|t|)    
## (Intercept)              42830.76     200.55 213.569  &amp;lt; 2e-16 ***
## year_n                    1362.05     205.00   6.644 4.97e-09 ***
## perc_women_region         1953.39     187.13  10.439 4.66e-16 ***
## year_n:perc_women_region   -32.32     194.19  -0.166    0.868    
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 102900 on 72 degrees of freedom
## Multiple R-squared:  0.6949, Adjusted R-squared:  0.6822 
## F-statistic: 54.65 on 3 and 72 DF,  p-value: &amp;lt; 2.2e-16&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;set.seed(123)
results &amp;lt;- boot(data = tbnum, statistic = bs, 
   R = 1000, formula = as.formula(model_mmod_scale))

summary (model_mmod_scale) %&amp;gt;% tidy() %&amp;gt;% 
  mutate(bootest = tidy(results)$statistic, 
  bootbias = tidy(results)$bias, 
  booterr =  tidy(results)$std.error, 
  conf = !((tidy(confint(results))$X2.5.. &amp;lt; 0) &amp;amp; (tidy(confint(results))$X97.5.. &amp;gt; 0)))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in confint.boot(results): BCa method fails for this problem. Using
## &amp;#39;perc&amp;#39; instead&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: &amp;#39;tidy.matrix&amp;#39; is deprecated.
## See help(&amp;quot;Deprecated&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in confint.boot(results): BCa method fails for this problem. Using
## &amp;#39;perc&amp;#39; instead&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: &amp;#39;tidy.matrix&amp;#39; is deprecated.
## See help(&amp;quot;Deprecated&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 4 x 9
##   term     estimate std.error statistic   p.value bootest bootbias booterr conf 
##   &amp;lt;chr&amp;gt;       &amp;lt;dbl&amp;gt;     &amp;lt;dbl&amp;gt;     &amp;lt;dbl&amp;gt;     &amp;lt;dbl&amp;gt;   &amp;lt;dbl&amp;gt;    &amp;lt;dbl&amp;gt;   &amp;lt;dbl&amp;gt; &amp;lt;lgl&amp;gt;
## 1 (Interc~  42831.       201.   214.    1.22e-102 42831.    -776.     254. TRUE 
## 2 year_n     1362.       205.     6.64  4.97e-  9  1362.      10.8    253. TRUE 
## 3 perc_wo~   1953.       187.    10.4   4.66e- 16  1953.     -94.0    273. TRUE 
## 4 year_n:~    -32.3      194.    -0.166 8.68e-  1   -32.3    -73.3    291. FALSE&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- dplyr::select(tbnum, c(salary, year_n, sex_men, perc_women_region, suming, salaryquotient, regioneduyears))

# A test with MARS and interactions
mmod_scaled &amp;lt;- earth(salary ~ ., weights = tbnum_weights, data = temp, nk = 11, degree = 2)

summary (mmod_scaled)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Call: earth(formula=salary~., data=temp, weights=tbnum_weights, degree=2,
##             nk=11)
## 
##                               coefficients
## (Intercept)                      41145.980
## sex_men                           1911.153
## h(0-year_n)                       -959.068
## h(year_n-0)                       1703.923
## h(0.311813-perc_women_region)    -1598.885
## h(perc_women_region-0.311813)     1546.770
## h(suming- -0.549566)               377.482
## sex_men * salaryquotient          -526.973
## 
## Selected 8 of 9 terms, and 5 of 6 predictors
## Termination condition: Reached nk 11
## Importance: year_n, suming, perc_women_region, sex_men, salaryquotient, ...
## Weights: 21400, 6800, 11500, 3000, 2400, 500, 7000, 1900, 16000, 4100, 3...
## Number of terms at each degree of interaction: 1 6 1
## GCV 2668331064    RSS 116081178669    GRSq 0.9209559    RSq 0.9535396&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;mmod_scaled &amp;lt;- earth(salary ~ ., weights = tbnum_weights, data = temp, nk = 13, degree = 2)

summary (mmod_scaled)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Call: earth(formula=salary~., data=temp, weights=tbnum_weights, degree=2,
##             nk=13)
## 
##                               coefficients
## (Intercept)                      41200.129
## sex_men                           1935.664
## h(0-year_n)                       -867.152
## h(year_n-0)                       1727.342
## h(0.311813-perc_women_region)    -1532.402
## h(perc_women_region-0.311813)     1450.579
## h(suming- -0.549566)               353.205
## h(-1.22297-salaryquotient)       -3067.317
## sex_men * salaryquotient          -647.409
## 
## Selected 9 of 11 terms, and 5 of 6 predictors
## Termination condition: Reached nk 13
## Importance: year_n, suming, perc_women_region, sex_men, salaryquotient, ...
## Weights: 21400, 6800, 11500, 3000, 2400, 500, 7000, 1900, 16000, 4100, 3...
## Number of terms at each degree of interaction: 1 7 1
## GCV 2629100288    RSS 104645110144    GRSq 0.922118    RSq 0.9581168&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot (mmod_scaled)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-81&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-8-1.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors including interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 10: Hockey-stick functions fit with MARS for the predictors including interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plotmo (mmod_scaled)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##  plotmo grid:    year_n sex_men perc_women_region     suming salaryquotient
##                       0     0.5         0.2069953 -0.4539968              0
##  regioneduyears
##      -0.1394781&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-82&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-8-2.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors including interactions, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 11: Hockey-stick functions fit with MARS for the predictors including interactions, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model_mmod_scale &amp;lt;- lm (salary ~ 
  sex_men +                        
  lspline(year_n, c(0)) +
  lspline(perc_women_region, c(0.311813)) +
  lspline(suming, c(-0.549566)) +
  lspline(salaryquotient, c(-1.22297)) +    
  sex_men:salaryquotient,  
  weights = tbnum_weights,
  data = tbnum) 

summary (model_mmod_scale)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Call:
## lm(formula = salary ~ sex_men + lspline(year_n, c(0)) + lspline(perc_women_region, 
##     c(0.311813)) + lspline(suming, c(-0.549566)) + lspline(salaryquotient, 
##     c(-1.22297)) + sex_men:salaryquotient, data = tbnum, weights = tbnum_weights)
## 
## Weighted Residuals:
##     Min      1Q  Median      3Q     Max 
## -159343  -17893    2866   18128   79279 
## 
## Coefficients:
##                                          Estimate Std. Error t value Pr(&amp;gt;|t|)
## (Intercept)                               44723.0     1743.3  25.655  &amp;lt; 2e-16
## sex_men                                    1772.4      238.2   7.440 2.88e-10
## lspline(year_n, c(0))1                      868.1      131.4   6.606 8.56e-09
## lspline(year_n, c(0))2                     1710.1      122.9  13.910  &amp;lt; 2e-16
## lspline(perc_women_region, c(0.311813))1   1382.3      225.1   6.142 5.51e-08
## lspline(perc_women_region, c(0.311813))2   1518.7      139.2  10.911 2.48e-16
## lspline(suming, c(-0.549566))1             1786.4     1624.5   1.100 0.275534
## lspline(suming, c(-0.549566))2              395.8      105.3   3.758 0.000369
## lspline(salaryquotient, c(-1.22297))1      2705.7     1126.2   2.403 0.019147
## lspline(salaryquotient, c(-1.22297))2       295.7      151.4   1.953 0.055071
## sex_men:salaryquotient                     -884.9      158.6  -5.578 5.07e-07
##                                             
## (Intercept)                              ***
## sex_men                                  ***
## lspline(year_n, c(0))1                   ***
## lspline(year_n, c(0))2                   ***
## lspline(perc_women_region, c(0.311813))1 ***
## lspline(perc_women_region, c(0.311813))2 ***
## lspline(suming, c(-0.549566))1              
## lspline(suming, c(-0.549566))2           ***
## lspline(salaryquotient, c(-1.22297))1    *  
## lspline(salaryquotient, c(-1.22297))2    .  
## sex_men:salaryquotient                   ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 38700 on 65 degrees of freedom
## Multiple R-squared:  0.961,  Adjusted R-squared:  0.955 
## F-statistic: 160.3 on 10 and 65 DF,  p-value: &amp;lt; 2.2e-16&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;set.seed(123)
results &amp;lt;- boot(data = tbnum, statistic = bs, 
  R = 1000, formula = as.formula(model_mmod_scale))

summary (model_mmod_scale) %&amp;gt;% tidy() %&amp;gt;% 
  mutate(bootest = tidy(results)$statistic, 
  bootbias = tidy(results)$bias, 
  booterr =  tidy(results)$std.error, 
  conf = !((tidy(confint(results))$X2.5.. &amp;lt; 0) &amp;amp; (tidy(confint(results))$X97.5.. &amp;gt; 0)))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: &amp;#39;tidy.matrix&amp;#39; is deprecated.
## See help(&amp;quot;Deprecated&amp;quot;)

## Warning: &amp;#39;tidy.matrix&amp;#39; is deprecated.
## See help(&amp;quot;Deprecated&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 11 x 9
##    term     estimate std.error statistic  p.value bootest bootbias booterr conf 
##    &amp;lt;chr&amp;gt;       &amp;lt;dbl&amp;gt;     &amp;lt;dbl&amp;gt;     &amp;lt;dbl&amp;gt;    &amp;lt;dbl&amp;gt;   &amp;lt;dbl&amp;gt;    &amp;lt;dbl&amp;gt;   &amp;lt;dbl&amp;gt; &amp;lt;lgl&amp;gt;
##  1 (Interc~   44723.     1743.     25.7  1.02e-35  44723.  1007.     3439. TRUE 
##  2 sex_men     1772.      238.      7.44 2.88e-10   1772.    -3.65    339. TRUE 
##  3 lspline~     868.      131.      6.61 8.56e- 9    868.   -88.4     299. TRUE 
##  4 lspline~    1710.      123.     13.9  3.71e-21   1710.   -11.6     250. TRUE 
##  5 lspline~    1382.      225.      6.14 5.51e- 8   1382.  -104.      308. TRUE 
##  6 lspline~    1519.      139.     10.9  2.48e-16   1519.   -51.2     248. TRUE 
##  7 lspline~    1786.     1625.      1.10 2.76e- 1   1786.    80.7    1608. FALSE
##  8 lspline~     396.      105.      3.76 3.69e- 4    396.    47.0     171. FALSE
##  9 lspline~    2706.     1126.      2.40 1.91e- 2   2706.   904.     2568. FALSE
## 10 lspline~     296.      151.      1.95 5.51e- 2    296.    77.6     196. FALSE
## 11 sex_men~    -885.      159.     -5.58 5.07e- 7   -885.  -153.      264. TRUE&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I will also use 10-fold cross-validation fit with decision trees and bagging on the data.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;set.seed(123)
tbnum_bag &amp;lt;- train(
  salary ~ .,
  data = tbnum,
  method = &amp;quot;treebag&amp;quot;,
  weights = tbnum_weights,  
  trControl = trainControl(method = &amp;quot;cv&amp;quot;, number = 10),
  nbagg = 200,  
  control = rpart.control(minsplit = 2, cp = 0)
)

vip::vip(tbnum_bag, num_features = 20, bar = FALSE)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in vip.default(tbnum_bag, num_features = 20, bar = FALSE): The `bar`
## argument has been deprecated in favor of the new `geom` argument. It will be
## removed in version 0.3.0.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-9&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-9-1.png&#34; alt=&#34;Data fit with decision tree bag, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 12: Data fit with decision tree bag, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Perform diagnostics on the final model.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- lm (salary ~ 
  sex_men +                        
  lspline(year_n, c(0)) +
  lspline(perc_women_region, c(0.311813)) +
  lspline(suming, c(-0.549566)) +
  sex_men:salaryquotient,  
  weights = tbnum_weights,
  data = tbnum)

summary (model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Call:
## lm(formula = salary ~ sex_men + lspline(year_n, c(0)) + lspline(perc_women_region, 
##     c(0.311813)) + lspline(suming, c(-0.549566)) + sex_men:salaryquotient, 
##     data = tbnum, weights = tbnum_weights)
## 
## Weighted Residuals:
##     Min      1Q  Median      3Q     Max 
## -158211  -13213   -2260   20760   84251 
## 
## Coefficients:
##                                          Estimate Std. Error t value Pr(&amp;gt;|t|)
## (Intercept)                              41612.74    1045.30  39.809  &amp;lt; 2e-16
## sex_men                                   1806.47     252.49   7.155 8.00e-10
## lspline(year_n, c(0))1                     948.66     135.66   6.993 1.56e-09
## lspline(year_n, c(0))2                    1693.55     131.00  12.928  &amp;lt; 2e-16
## lspline(perc_women_region, c(0.311813))1  1481.96     238.41   6.216 3.72e-08
## lspline(perc_women_region, c(0.311813))2  1531.75     136.49  11.222  &amp;lt; 2e-16
## lspline(suming, c(-0.549566))1            1625.10    1734.28   0.937  0.35210
## lspline(suming, c(-0.549566))2             408.52     112.02   3.647  0.00052
## sex_men:salaryquotient                    -515.55      89.72  -5.746 2.44e-07
##                                             
## (Intercept)                              ***
## sex_men                                  ***
## lspline(year_n, c(0))1                   ***
## lspline(year_n, c(0))2                   ***
## lspline(perc_women_region, c(0.311813))1 ***
## lspline(perc_women_region, c(0.311813))2 ***
## lspline(suming, c(-0.549566))1              
## lspline(suming, c(-0.549566))2           ***
## sex_men:salaryquotient                   ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 41350 on 67 degrees of freedom
## Multiple R-squared:  0.9541, Adjusted R-squared:  0.9487 
## F-statistic: 174.2 on 8 and 67 DF,  p-value: &amp;lt; 2.2e-16&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova (model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: salary
##                                         Df     Sum Sq    Mean Sq F value
## sex_men                                  1 4.1914e+11 4.1914e+11 245.090
## lspline(year_n, c(0))                    2 6.3234e+11 3.1617e+11 184.879
## lspline(perc_women_region, c(0.311813))  2 1.2213e+12 6.1063e+11 357.064
## lspline(suming, c(-0.549566))            2 5.4719e+10 2.7360e+10  15.998
## sex_men:salaryquotient                   1 5.6461e+10 5.6461e+10  33.015
## Residuals                               67 1.1458e+11 1.7101e+09        
##                                            Pr(&amp;gt;F)    
## sex_men                                 &amp;lt; 2.2e-16 ***
## lspline(year_n, c(0))                   &amp;lt; 2.2e-16 ***
## lspline(perc_women_region, c(0.311813)) &amp;lt; 2.2e-16 ***
## lspline(suming, c(-0.549566))           2.090e-06 ***
## sex_men:salaryquotient                  2.439e-07 ***
## Residuals                                            
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot (model)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-101&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-10-1.png&#34; alt=&#34;Diagnostics on the model, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 13: Diagnostics on the model, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-102&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-10-2.png&#34; alt=&#34;Diagnostics on the model, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 14: Diagnostics on the model, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-103&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-10-3.png&#34; alt=&#34;Diagnostics on the model, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 15: Diagnostics on the model, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-104&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-10-4.png&#34; alt=&#34;Diagnostics on the model, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 16: Diagnostics on the model, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;binnedplot(predict(model), resid(model))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-105&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-10-5.png&#34; alt=&#34;Diagnostics on the model, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 17: Diagnostics on the model, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;halfnorm(rstudent(model))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-106&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-10-6.png&#34; alt=&#34;Diagnostics on the model, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 18: Diagnostics on the model, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;% mutate(residuals = residuals(model)) %&amp;gt;% 
  group_by(salary, perc_women_region, suming, year_n, sex_men) %&amp;gt;% 
  summarise(residuals = mean(residuals), count = sum(suming)) %&amp;gt;%
    ggplot (aes(x = salary, y = residuals, size = sqrt(count), colour = perc_women_region)) +
    geom_point() + facet_grid(. ~ year_n)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in sqrt(count): NaNs produced

## Warning in sqrt(count): NaNs produced&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Removed 49 rows containing missing values (geom_point).&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-107&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-10-7.png&#34; alt=&#34;Diagnostics on the model, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 19: Diagnostics on the model, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;set.seed(123)
results &amp;lt;- boot(data = tbnum, statistic = bs, 
  R = 1000, formula = as.formula(model))

summary (model) %&amp;gt;% tidy() %&amp;gt;% 
  mutate(bootest = tidy(results)$statistic, 
  bootbias = tidy(results)$bias, 
  booterr =  tidy(results)$std.error, 
  conf = !((tidy(confint(results))$X2.5.. &amp;lt; 0) &amp;amp; (tidy(confint(results))$X97.5.. &amp;gt; 0)))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: &amp;#39;tidy.matrix&amp;#39; is deprecated.
## See help(&amp;quot;Deprecated&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: &amp;#39;tidy.matrix&amp;#39; is deprecated.
## See help(&amp;quot;Deprecated&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 9 x 9
##   term      estimate std.error statistic  p.value bootest bootbias booterr conf 
##   &amp;lt;chr&amp;gt;        &amp;lt;dbl&amp;gt;     &amp;lt;dbl&amp;gt;     &amp;lt;dbl&amp;gt;    &amp;lt;dbl&amp;gt;   &amp;lt;dbl&amp;gt;    &amp;lt;dbl&amp;gt;   &amp;lt;dbl&amp;gt; &amp;lt;lgl&amp;gt;
## 1 (Interce~   41613.    1045.     39.8   2.33e-48  41613.    50.1    1258. TRUE 
## 2 sex_men      1806.     252.      7.15  8.00e-10   1806.    -5.79    402. TRUE 
## 3 lspline(~     949.     136.      6.99  1.56e- 9    949.   -99.1     358. TRUE 
## 4 lspline(~    1694.     131.     12.9   7.16e-20   1694.    26.7     329. TRUE 
## 5 lspline(~    1482.     238.      6.22  3.72e- 8   1482.    10.7     326. TRUE 
## 6 lspline(~    1532.     136.     11.2   4.88e-17   1532.  -119.      241. TRUE 
## 7 lspline(~    1625.    1734.      0.937 3.52e- 1   1625.   118.     2169. FALSE
## 8 lspline(~     409.     112.      3.65  5.20e- 4    409.    19.5     196. TRUE 
## 9 sex_men:~    -516.      89.7    -5.75  2.44e- 7   -516.    12.3     246. TRUE&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(results, index = 1) # intercept &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-108&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-10-8.png&#34; alt=&#34;Diagnostics on the model, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 20: Diagnostics on the model, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Let’s have a look at the outliers.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_outliers_info[25,]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 1 x 11
##   region salary year_n regiongroupsize sex   regioneduyears suming
##   &amp;lt;chr&amp;gt;   &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt;           &amp;lt;dbl&amp;gt; &amp;lt;chr&amp;gt;          &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt;
## 1 SE31 ~  38100   2015          304987 men             11.2   4600
## # ... with 4 more variables: perc_women_region &amp;lt;dbl&amp;gt;, salaryquotient &amp;lt;dbl&amp;gt;,
## #   eduquotient &amp;lt;dbl&amp;gt;, perc_women_eng_region &amp;lt;dbl&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_outliers_info[35,]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 1 x 11
##   region salary year_n regiongroupsize sex   regioneduyears suming
##   &amp;lt;chr&amp;gt;   &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt;           &amp;lt;dbl&amp;gt; &amp;lt;chr&amp;gt;          &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt;
## 1 SE21 ~  40100   2016          304366 men             11.3   2600
## # ... with 4 more variables: perc_women_region &amp;lt;dbl&amp;gt;, salaryquotient &amp;lt;dbl&amp;gt;,
## #   eduquotient &amp;lt;dbl&amp;gt;, perc_women_eng_region &amp;lt;dbl&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_outliers_info[36,]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 1 x 11
##   region salary year_n regiongroupsize sex   regioneduyears suming
##   &amp;lt;chr&amp;gt;   &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt;           &amp;lt;dbl&amp;gt; &amp;lt;chr&amp;gt;          &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt;
## 1 SE21 ~  34700   2016          290140 women           11.7    660
## # ... with 4 more variables: perc_women_region &amp;lt;dbl&amp;gt;, salaryquotient &amp;lt;dbl&amp;gt;,
## #   eduquotient &amp;lt;dbl&amp;gt;, perc_women_eng_region &amp;lt;dbl&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Now let’s see what we have found. I will plot both the regression and the decision trees models for comparison.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- dplyr::select(tb_unique, c(salary, year_n, sex, perc_women_region, suming, salaryquotient, regioneduyears))

mmod &amp;lt;- earth(salary ~ ., weights = tbnum_weights, data = temp, nk = 11, degree = 2)

summary(mmod)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Call: earth(formula=salary~., data=temp, weights=tbnum_weights, degree=2,
##             nk=11)
## 
##                               coefficients
## (Intercept)                      43393.134
## sexwomen                         -1907.433
## h(2016-year_n)                    -704.320
## h(year_n-2016)                    1184.617
## h(0.493906-perc_women_region)  -250482.793
## h(perc_women_region-0.493906)   295538.165
## h(suming-2400)                       0.067
## h(0.925101-salaryquotient)      -31088.734
## h(salaryquotient-0.925101)      -18920.288
## 
## Selected 9 of 10 terms, and 5 of 6 predictors
## Termination condition: Reached nk 11
## Importance: year_n, suming, perc_women_region, sexwomen, salaryquotient, ...
## Weights: 21400, 6800, 11500, 3000, 2400, 500, 7000, 1900, 16000, 4100, 3...
## Number of terms at each degree of interaction: 1 8 (additive model)
## GCV 3188847459    RSS 126924520583    GRSq 0.9055366    RSq 0.9491997&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- lm (salary ~ 
  sex +                        
  lspline(year_n, c(2016)) +
  lspline(perc_women_region, c(0.493906)) +
  lspline(suming, c(2400)) +
  sex:salaryquotient,     
  weights = tbnum_weights,
  data = tb_unique) 

set.seed(123)  # for reproducibility
tbnum_bag &amp;lt;- train(
  salary ~ .,
  data = tb_unique,
  method = &amp;quot;treebag&amp;quot;,
  weights = suming,  
  trControl = trainControl(method = &amp;quot;cv&amp;quot;, number = 10),
  nbagg = 200,  
  control = rpart.control(minsplit = 2, cp = 0)
)

p1 &amp;lt;- plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;perc_women_region&amp;quot;))

p2 &amp;lt;- partial(tbnum_bag, pred.var = &amp;quot;perc_women_region&amp;quot;) %&amp;gt;% autoplot()

gridExtra::grid.arrange(p1, p2, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-121&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-12-1.png&#34; alt=&#34;The significance of the per cent women in the region on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 21: The significance of the per cent women in the region on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_unique %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = perc_women_region, y = salary)) + 
  labs(
    x = &amp;quot;Percent women in region&amp;quot;,
    y = &amp;quot;Salary&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-122&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-12-2.png&#34; alt=&#34;The significance of the per cent women in the region on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 22: The significance of the per cent women in the region on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;p1 &amp;lt;- plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;))

p2 &amp;lt;- partial(tbnum_bag, pred.var = &amp;quot;year_n&amp;quot;) %&amp;gt;% autoplot()

gridExtra::grid.arrange(p1, p2, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-131&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-13-1.png&#34; alt=&#34;The significance of the year on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 23: The significance of the year on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_unique %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = year_n, y = salary)) + 
  labs(
    x = &amp;quot;Year&amp;quot;,
    y = &amp;quot;Salary&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-132&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-13-2.png&#34; alt=&#34;The significance of the year on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 24: The significance of the year on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;p1 &amp;lt;- plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sex&amp;quot;))

p2 &amp;lt;- tb_unique %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = sex, y = salary)) + 
  labs(
    x = &amp;quot;Sex&amp;quot;,
    y = &amp;quot;Salary&amp;quot;
  )

gridExtra::grid.arrange(p1, p2, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-14&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-14-1.png&#34; alt=&#34;The significance of gender on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 25: The significance of gender on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;p1 &amp;lt;- plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;suming&amp;quot;))

p2 &amp;lt;- partial(tbnum_bag, pred.var = &amp;quot;suming&amp;quot;) %&amp;gt;% autoplot()

gridExtra::grid.arrange(p1, p2, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-151&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-15-1.png&#34; alt=&#34;The significance of the number of engineers on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 26: The significance of the number of engineers on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_unique %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = suming, y = salary)) + 
  labs(
    x = &amp;quot;# engineers in the region&amp;quot;,
    y = &amp;quot;Salary&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-152&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-15-2.png&#34; alt=&#34;The significance of the number of engineers on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 27: The significance of the number of engineers on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;p1 &amp;lt;- plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;salaryquotient&amp;quot;, &amp;quot;sex&amp;quot;))

p2 &amp;lt;- tb_unique %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = salaryquotient, y = salary, colour = sex)) + 
  labs(
    x = &amp;quot;Quotient between salary for men and women&amp;quot;,
    y = &amp;quot;Salary&amp;quot;
  )

gridExtra::grid.arrange(p1, p2, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-16&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-16-1.png&#34; alt=&#34;The significance of the interaction between sex and the quotient between salary for men and women within each group defined by year and region on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 28: The significance of the interaction between sex and the quotient between salary for men and women within each group defined by year and region on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;p1 &amp;lt;- plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;sex&amp;quot;))

p2 &amp;lt;- tb_unique %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = year_n, y = salary, colour = sex)) + 
  labs(
    x = &amp;quot;Year&amp;quot;,
    y = &amp;quot;Salary&amp;quot;
  )

gridExtra::grid.arrange(p1, p2, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-17&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-17-1.png&#34; alt=&#34;The combination of the year and sex on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 29: The combination of the year and sex on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;p1 &amp;lt;- plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;perc_women_region&amp;quot;, &amp;quot;sex&amp;quot;))

p2 &amp;lt;- tb_unique %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = perc_women_region, y = salary, colour = sex)) + 
  labs(
    x = &amp;quot;Percent women in region&amp;quot;,
    y = &amp;quot;Salary&amp;quot;
  )

gridExtra::grid.arrange(p1, p2, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-18&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-18-1.png&#34; alt=&#34;The combination of the per cent women in the region and sex on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 30: The combination of the per cent women in the region and sex on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;p1 &amp;lt;- plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;suming&amp;quot;, &amp;quot;sex&amp;quot;))

p2 &amp;lt;- tb_unique %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = suming, y = salary, colour = sex)) + 
  labs(
    x = &amp;quot;# engineers in the region&amp;quot;,
    y = &amp;quot;Salary&amp;quot;
  )

gridExtra::grid.arrange(p1, p2, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-19&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-19-1.png&#34; alt=&#34;The combination of the number of engineers in the region and sex on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 31: The combination of the number of engineers in the region and sex on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;p1 &amp;lt;- plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;perc_women_region&amp;quot;))

p2 &amp;lt;- partial(tbnum_bag, pred.var = c(&amp;quot;perc_women_region&amp;quot;, &amp;quot;year_n&amp;quot;)) %&amp;gt;% 
  plotPartial(levelplot = FALSE, zlab = &amp;quot;yhat&amp;quot;, drape = TRUE, 
              colorkey = TRUE, screen = list(z = -20, x = -60))

gridExtra::grid.arrange(p1, p2, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-201&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-20-1.png&#34; alt=&#34;The combination of the year and per cent women in the region on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 32: The combination of the year and per cent women in the region on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_unique %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = year_n, y = salary, colour = perc_women_region)) + 
  labs(
    x = &amp;quot;Year&amp;quot;,
    y = &amp;quot;Salary&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-202&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-20-2.png&#34; alt=&#34;The combination of the year and per cent women in the region on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 33: The combination of the year and per cent women in the region on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;p1 &amp;lt;- plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;suming&amp;quot;))

p2 &amp;lt;- partial(tbnum_bag, pred.var = c(&amp;quot;suming&amp;quot;, &amp;quot;year_n&amp;quot;)) %&amp;gt;% 
  plotPartial(levelplot = FALSE, zlab = &amp;quot;yhat&amp;quot;, drape = TRUE, 
              colorkey = TRUE, screen = list(z = -20, x = -60))

gridExtra::grid.arrange(p1, p2, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-211&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-21-1.png&#34; alt=&#34;The combination of the year and number of engineers in the region on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 34: The combination of the year and number of engineers in the region on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_unique %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = year_n, y = salary, colour = suming)) + 
  labs(
    x = &amp;quot;Year&amp;quot;,
    y = &amp;quot;Salary&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-212&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-21-2.png&#34; alt=&#34;The combination of the year and number of engineers in the region on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 35: The combination of the year and number of engineers in the region on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;p1 &amp;lt;- plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;suming&amp;quot;, &amp;quot;perc_women_region&amp;quot;))

p2 &amp;lt;- partial(tbnum_bag, pred.var = c(&amp;quot;perc_women_region&amp;quot;, &amp;quot;suming&amp;quot;)) %&amp;gt;% 
  plotPartial(levelplot = FALSE, zlab = &amp;quot;yhat&amp;quot;, drape = TRUE, 
              colorkey = TRUE, screen = list(z = -20, x = -60))

gridExtra::grid.arrange(p1, p2, ncol = 2)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-221&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-22-1.png&#34; alt=&#34;The combination of the number of engineers in the region and per cent women in the region on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 36: The combination of the number of engineers in the region and per cent women in the region on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_unique %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = suming, y = salary, colour = perc_women_region)) + 
  labs(
    x = &amp;quot;# engineers in the region&amp;quot;,
    y = &amp;quot;Salary&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-222&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-16-engineering-salaries-revisited_files/figure-html/unnamed-chunk-22-2.png&#34; alt=&#34;The combination of the number of engineers in the region and per cent women in the region on the salary for engineers, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 37: The combination of the number of engineers in the region and per cent women in the region on the salary for engineers, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
</description>
    </item>
    
    <item>
      <title>The significance of population size, year, age and per cent women on the education level in Sweden</title>
      <link>http://mikaellundqvist.rbind.io/2020/04/05/the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden/</link>
      <pubDate>Sun, 05 Apr 2020 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2020/04/05/the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden/</guid>
      <description>


&lt;p&gt;In my last post, I analysed how the level of education is affected by region, sex and year. In this post, I will continue with the same dataset but this time I will include age in the analysis. Please send suggestions for improvement of the analysis to &lt;a href=&#34;mailto:ranalystatisticssweden@gmail.com&#34; class=&#34;email&#34;&gt;ranalystatisticssweden@gmail.com&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages -------------------------------------------------- tidyverse 1.3.0 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.2.1     v purrr   0.3.3
## v tibble  2.1.3     v dplyr   0.8.3
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.4.0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ----------------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (broom)
library (car)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (sjPlot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Registered S3 methods overwritten by &amp;#39;lme4&amp;#39;:
##   method                          from
##   cooks.distance.influence.merMod car 
##   influence.merMod                car 
##   dfbeta.influence.merMod         car 
##   dfbetas.influence.merMod        car&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (leaps)
library (MASS)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;MASS&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     select&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (earth)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;earth&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: Formula&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: plotmo&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;plotmo&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: plotrix&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: TeachingDemos&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;TeachingDemos&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (acepack)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;acepack&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (lspline)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;lspline&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (lme4)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: Matrix&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;Matrix&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:tidyr&amp;#39;:
## 
##     expand, pack, unpack&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (pROC)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;pROC&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Type &amp;#39;citation(&amp;quot;pROC&amp;quot;)&amp;#39; for a citation.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;pROC&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:stats&amp;#39;:
## 
##     cov, smooth, var&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (boot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;boot&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:car&amp;#39;:
## 
##     logit&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (faraway)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;faraway&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:boot&amp;#39;:
## 
##     logit, melanoma&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:car&amp;#39;:
## 
##     logit, vif&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (arm)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;arm&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## arm (Version 1.10-1, built: 2018-4-12)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Working directory is C:/R/rblog/content/post&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;arm&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:faraway&amp;#39;:
## 
##     fround, logit, pfround&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:boot&amp;#39;:
## 
##     logit&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:plotrix&amp;#39;:
## 
##     rescale&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:car&amp;#39;:
## 
##     logit&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;readfile &amp;lt;- function (file1){read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%
  gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = groupsize) %&amp;gt;%
  drop_na() %&amp;gt;%
  mutate (year_n = parse_number (year))
}

perc_women &amp;lt;- function(x){  
  ifelse (length(x) == 2, x[2] / (x[1] + x[2]), NA)
} 

nuts &amp;lt;- read.csv(&amp;quot;nuts.csv&amp;quot;) %&amp;gt;%
  mutate(NUTS2_sh = substr(NUTS2, 3, 4))&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data table is downloaded from Statistics Sweden. It is saved as a comma-delimited file without heading, UF0506A1.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I will calculate the percentage of women in for the different education levels in the different regions for each year. In my later analysis, I will use the number of people in each education level, region, year and age.&lt;/p&gt;
&lt;p&gt;The table: Population 16-74 years of age by region, highest level of education, age and sex. Year 1985 - 2018 NUTS 2 level 2008- 10 year intervals (16-74)&lt;/p&gt;
&lt;p&gt;The data is aggregated, the size of each group is in the column groupsize.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb &amp;lt;- readfile(&amp;quot;UF0506A1.csv&amp;quot;) %&amp;gt;%  
  mutate(edulevel = `level of education`) %&amp;gt;%
  group_by(edulevel, region, year, sex, age) %&amp;gt;%
  mutate(groupsize_age = sum(groupsize)) %&amp;gt;%  
  group_by(edulevel, region, year, age) %&amp;gt;% 
  mutate (sum_edu_region_year = sum(groupsize)) %&amp;gt;%  
  mutate (perc_women = perc_women (groupsize_age)) %&amp;gt;% 
  group_by(region, year) %&amp;gt;%
  mutate (sum_pop = sum(groupsize)) %&amp;gt;% rowwise() %&amp;gt;%
  mutate(age_l = unlist(lapply(strsplit(substr(age, 1, 5), &amp;quot;-&amp;quot;), strtoi))[1]) %&amp;gt;%
  rowwise() %&amp;gt;% 
  mutate(age_h = unlist(lapply(strsplit(substr(age, 1, 5), &amp;quot;-&amp;quot;), strtoi))[2]) %&amp;gt;%
  mutate(age_n = (age_l + age_h) / 2) %&amp;gt;%
  left_join(nuts %&amp;gt;% distinct (NUTS2_en, NUTS2_sh), by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `region`/`NUTS2_en` joining character vector and factor,
## coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;numedulevel &amp;lt;- read.csv(&amp;quot;edulevel_1.csv&amp;quot;) 

numedulevel[, 2] &amp;lt;- data.frame(c(8, 9, 10, 12, 13, 15, 22, NA))

numedulevel %&amp;gt;%
  knitr::kable(
  booktabs = TRUE,
  caption = &amp;#39;Calculated in previous post, length of education&amp;#39;) &lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-2&#34;&gt;Table 1: &lt;/span&gt;Calculated in previous post, length of education&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;level.of.education&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;eduyears&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;primary and secondary education less than 9 years (ISCED97 1)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;primary and secondary education 9-10 years (ISCED97 2)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;upper secondary education, 2 years or less (ISCED97 3C)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;upper secondary education 3 years (ISCED97 3A)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;post-secondary education, less than 3 years (ISCED97 4+5B)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;13&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;post-secondary education 3 years or more (ISCED97 5A)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;post-graduate education (ISCED97 6)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;22&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;no information about level of educational attainment&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum &amp;lt;- tb %&amp;gt;% 
  right_join(numedulevel, by = c(&amp;quot;level of education&amp;quot; = &amp;quot;level.of.education&amp;quot;)) %&amp;gt;%
  filter(!is.na(eduyears)) %&amp;gt;% 
  drop_na()&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `level of education`/`level.of.education` joining character
## vector and factor, coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  filter (year_n == 2018) %&amp;gt;%
  ggplot () +  
    geom_point (mapping = aes(x = NUTS2_sh,y = perc_women, colour = age_n)) +
  facet_grid(. ~ eduyears)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-21&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-2-1.png&#34; alt=&#34;Population by region, level of education, percent women and year, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: Population by region, level of education, percent women and year, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  filter (year_n == 2008) %&amp;gt;%
  ggplot () +  
    geom_point (mapping = aes(x = NUTS2_sh,y = perc_women, colour = age_n)) +
  facet_grid(. ~ eduyears)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-22&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-2-2.png&#34; alt=&#34;Population by region, level of education, percent women and year, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: Population by region, level of education, percent women and year, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  filter (year_n == 1998) %&amp;gt;%
  ggplot () +  
    geom_point (mapping = aes(x = NUTS2_sh,y = perc_women, colour = age_n)) +
  facet_grid(. ~ eduyears)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-23&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-2-3.png&#34; alt=&#34;Population by region, level of education, percent women and year, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: Population by region, level of education, percent women and year, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  filter (year_n == 1988) %&amp;gt;%
  ggplot () +  
    geom_point (mapping = aes(x = NUTS2_sh,y = perc_women, colour = age_n)) +
  facet_grid(. ~ eduyears)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-24&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-2-4.png&#34; alt=&#34;Population by region, level of education, percent women and year, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: Population by region, level of education, percent women and year, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(tbnum)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##     region              age            level of education     sex           
##  Length:22660       Length:22660       Length:22660       Length:22660      
##  Class :character   Class :character   Class :character   Class :character  
##  Mode  :character   Mode  :character   Mode  :character   Mode  :character  
##                                                                             
##                                                                             
##                                                                             
##      year             groupsize         year_n       edulevel        
##  Length:22660       Min.   :    0   Min.   :1985   Length:22660      
##  Class :character   1st Qu.: 1713   1st Qu.:1993   Class :character  
##  Mode  :character   Median : 5737   Median :2001   Mode  :character  
##                     Mean   : 9638   Mean   :2001                     
##                     3rd Qu.:14135   3rd Qu.:2010                     
##                     Max.   :77163   Max.   :2018                     
##  groupsize_age   sum_edu_region_year   perc_women        sum_pop       
##  Min.   :    0   Min.   :     1      Min.   :0.0000   Min.   : 266057  
##  1st Qu.: 1713   1st Qu.:  3566      1st Qu.:0.4090   1st Qu.: 560119  
##  Median : 5737   Median : 11566      Median :0.4875   Median : 859794  
##  Mean   : 9638   Mean   : 19276      Mean   :0.4707   Mean   : 824996  
##  3rd Qu.:14135   3rd Qu.: 28287      3rd Qu.:0.5542   3rd Qu.:1200038  
##  Max.   :77163   Max.   :134645      Max.   :1.0000   Max.   :1716160  
##      age_l           age_h           age_n         NUTS2_sh        
##  Min.   :16.00   Min.   :24.00   Min.   :20.00   Length:22660      
##  1st Qu.:25.00   1st Qu.:34.00   1st Qu.:29.50   Class :character  
##  Median :45.00   Median :54.00   Median :49.50   Mode  :character  
##  Mean   :40.37   Mean   :49.21   Mean   :44.79                     
##  3rd Qu.:55.00   3rd Qu.:64.00   3rd Qu.:59.50                     
##  Max.   :65.00   Max.   :74.00   Max.   :69.50                     
##     eduyears    
##  Min.   : 8.00  
##  1st Qu.: 9.00  
##  Median :12.00  
##  Mean   :12.64  
##  3rd Qu.:15.00  
##  Max.   :22.00&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Let’s investigate the shape of the function for the response and predictors. The shape of the predictors has a great impact on the rest of the analysis. I use acepack to fit a model and plot both the response and the predictors.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbtest &amp;lt;- tbnum %&amp;gt;% dplyr::select(sum_pop, sum_edu_region_year, year_n, perc_women, age_n)

tbtest &amp;lt;- data.frame(tbtest)

acefit &amp;lt;- ace(tbtest, tbnum$eduyears, wt=tbtest$sum_edu_region_year)

plot(tbnum$eduyears, acefit$ty, xlab = &amp;quot;Years of education&amp;quot;, ylab = &amp;quot;transformed years of education&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-31&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-3-1.png&#34; alt=&#34;Plots of the response and predictors using acepack&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: Plots of the response and predictors using acepack
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(tbtest[,1], acefit$tx[,1], xlab = &amp;quot;Population in region&amp;quot;, ylab = &amp;quot;transformed population in region&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-32&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-3-2.png&#34; alt=&#34;Plots of the response and predictors using acepack&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: Plots of the response and predictors using acepack
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(tbtest[,2], acefit$tx[,2], xlab = &amp;quot;# persons with same edulevel, region, year&amp;quot;, ylab = &amp;quot;transformed # persons with same edulevel, region, year&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-33&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-3-3.png&#34; alt=&#34;Plots of the response and predictors using acepack&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: Plots of the response and predictors using acepack
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(tbtest[,3], acefit$tx[,3], xlab = &amp;quot;Year&amp;quot;, ylab = &amp;quot;transformed year&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-34&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-3-4.png&#34; alt=&#34;Plots of the response and predictors using acepack&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: Plots of the response and predictors using acepack
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(tbtest[,4], acefit$tx[,4], xlab = &amp;quot;Percent women&amp;quot;, ylab = &amp;quot;transformed percent women&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-35&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-3-5.png&#34; alt=&#34;Plots of the response and predictors using acepack&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: Plots of the response and predictors using acepack
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(tbtest[,5], acefit$tx[,5], xlab = &amp;quot;Age&amp;quot;, ylab = &amp;quot;transformed age&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-36&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-3-6.png&#34; alt=&#34;Plots of the response and predictors using acepack&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 10: Plots of the response and predictors using acepack
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;I use MARS to fit hockey-stick functions for the predictors. I do not wish to overfit by using a better approximation at this point. I will include interactions of degree two. I will put more emphasis on groups with larger size by using the number of persons with same edulevel, region, year, age as weights in the regression. From the analysis with acepack, I will approximate the shape of the response with X^-1.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbtemp &amp;lt;- tbnum %&amp;gt;% dplyr::select(eduyears, sum_pop, sum_edu_region_year, year_n, perc_women, age_n)

mmod &amp;lt;- earth(eduyears^-1 ~ ., weights = tbtest$sum_edu_region_year, data = tbtemp, nk = 9, degree = 2)

summary (mmod)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Call: earth(formula=eduyears^-1~., data=tbtemp,
##             weights=tbtest$sum_edu_region_year, degree=2, nk=9)
## 
##                                         coefficients
## (Intercept)                              0.109974110
## h(68923-sum_edu_region_year)            -0.000000172
## h(sum_edu_region_year-68923)            -0.000000071
## h(0.402156-perc_women)                  -0.142039538
## h(perc_women-0.402156)                  -0.216582584
## h(2004-year_n) * h(perc_women-0.402156)  0.006151369
## h(year_n-2004) * h(perc_women-0.402156) -0.003086559
## h(perc_women-0.402156) * h(age_n-29.5)   0.004789032
## h(perc_women-0.402156) * h(29.5-age_n)   0.007923485
## 
## Selected 9 of 9 terms, and 4 of 5 predictors
## Termination condition: Reached nk 9
## Importance: perc_women, age_n, year_n, sum_edu_region_year, sum_pop-unused
## Weights: 160, 160, 2503, 2503, 27984, 27984, 41596, 41596, 57813, 57813,...
## Number of terms at each degree of interaction: 1 4 4
## GCV 4.263981    RSS 96442.81    GRSq 0.3866042    RSq 0.3876866&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot (mmod)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-41&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-4-1.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 11: Hockey-stick functions fit with MARS for the predictors, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plotmo (mmod)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##  plotmo grid:    sum_pop sum_edu_region_year year_n perc_women age_n
##                   859794             11566.5   2001  0.4875054  49.5&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-42&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-4-2.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 12: Hockey-stick functions fit with MARS for the predictors, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model_mmod &amp;lt;- lm (eduyears^-1 ~ 
  lspline(sum_edu_region_year, c(68923)) + 
  lspline(perc_women, c(0.402156)) +  
  lspline(year_n, c(2004)):lspline(perc_women, c(0.402156)) +
  lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5)), 
  weights = tbtest$sum_edu_region_year,
  data = tbnum) 

summary (model_mmod)$r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.4067181&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova (model_mmod)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: eduyears^-1
##                                                              Df Sum Sq Mean Sq
## lspline(sum_edu_region_year, c(68923))                        2   6429  3214.4
## lspline(perc_women, c(0.402156))                              2  11182  5590.8
## lspline(perc_women, c(0.402156)):lspline(year_n, c(2004))     4  18631  4657.7
## lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5))      4  27819  6954.8
## Residuals                                                 22647  93445     4.1
##                                                           F value    Pr(&amp;gt;F)    
## lspline(sum_edu_region_year, c(68923))                     779.03 &amp;lt; 2.2e-16 ***
## lspline(perc_women, c(0.402156))                          1354.96 &amp;lt; 2.2e-16 ***
## lspline(perc_women, c(0.402156)):lspline(year_n, c(2004)) 1128.81 &amp;lt; 2.2e-16 ***
## lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5))  1685.54 &amp;lt; 2.2e-16 ***
## Residuals                                                                      
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Since the predictors are on different scales I will also use MARS to fit hockey-stick functions to the standardised data. Weights can not be negative.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbtemp &amp;lt;- tbnum %&amp;gt;% dplyr::select(eduyears, sum_pop, sum_edu_region_year, year_n, perc_women, age_n)

tbtemp_scale &amp;lt;- data.frame(tbtemp %&amp;gt;% scale())

mmod_scale &amp;lt;- earth(eduyears^-1 ~ ., weights = tbnum$sum_edu_region_year, data = tbtemp_scale, nk = 9, degree = 2)

summary (mmod_scale)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Call: earth(formula=eduyears^-1~., data=tbtemp_scale,
##             weights=tbnum$sum_edu_region_year, degree=2, nk=9)
## 
##                                coefficients
## (Intercept)                       1.4518768
## h(1.54673-sum_pop)               -1.3123162
## h(2.48479-sum_edu_region_year)    2.2482786
## h(sum_edu_region_year-2.48479)    0.4668398
## h(0.589918-perc_women)           -5.1021696
## h(perc_women-0.589918)           -5.8909808
## h(-0.905736-age_n)               -3.0330857
## h(age_n- -0.905736)              -0.5385299
## 
## Selected 8 of 9 terms, and 4 of 5 predictors
## Termination condition: Reached nk 9
## Importance: perc_women, sum_edu_region_year, sum_pop, age_n, year_n-unused
## Weights: 160, 160, 2503, 2503, 27984, 27984, 41596, 41596, 57813, 57813,...
## Number of terms at each degree of interaction: 1 7 (additive model)
## GCV 388811.6    RSS 8796089602    GRSq 0.2645814    RSq 0.2657169&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot (mmod_scale)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-51&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-5-1.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 13: Hockey-stick functions fit with MARS for the predictors, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plotmo (mmod_scale)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##  plotmo grid:    sum_pop sum_edu_region_year      year_n perc_women     age_n
##               0.08635757          -0.3683495 -0.04979415  0.1299828 0.2792169&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-52&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-5-2.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 14: Hockey-stick functions fit with MARS for the predictors, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model_mmod_scale &amp;lt;- lm (eduyears^-1 ~ 
  lspline(sum_pop, c(1.54673)) + 
  lspline(sum_edu_region_year, c(2.48479)) +  
  lspline(perc_women, c(0.589918)) +
  lspline(age_n, c(-0.905736)), 
  weights = tbtest$sum_edu_region_year,
  data = tbtemp_scale) 

summary (model_mmod_scale)$r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.2657429&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova (model_mmod_scale)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: eduyears^-1
##                                             Df     Sum Sq    Mean Sq  F value
## lspline(sum_pop, c(1.54673))                 2   22976857   11488429   29.585
## lspline(sum_edu_region_year, c(2.48479))     2  824771527  412385764 1061.981
## lspline(perc_women, c(0.589918))             2 2195580032 1097790016 2827.043
## lspline(age_n, c(-0.905736))                 2  140046090   70023045  180.324
## Residuals                                22651 8795778088     388317         
##                                             Pr(&amp;gt;F)    
## lspline(sum_pop, c(1.54673))             1.473e-13 ***
## lspline(sum_edu_region_year, c(2.48479)) &amp;lt; 2.2e-16 ***
## lspline(perc_women, c(0.589918))         &amp;lt; 2.2e-16 ***
## lspline(age_n, c(-0.905736))             &amp;lt; 2.2e-16 ***
## Residuals                                             
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I will use regsubsets to find the model which minimises the AIC using the standardised data. I will include some plots for diagnostic purposes. I have also included a bootstrap test since we can’t count on the errors to be normally distributed.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;b &amp;lt;- regsubsets (eduyears^-1 ~ (lspline(sum_edu_region_year, c(2.48479)) + lspline(perc_women, c(0.589918)) + lspline(age_n, c(-0.905736)) + year_n + lspline(sum_pop, c(1.54673))) * (lspline(sum_edu_region_year, c(2.48479)) + lspline(perc_women, c(0.589918)) + lspline(age_n, c(-0.905736)) + year_n + lspline(sum_pop, c(1.54673))), weights = tbnum$sum_edu_region_year, data = tbtemp_scale, nvmax = 12)

rs &amp;lt;- summary(b)
AIC &amp;lt;- 50 * log (rs$rss / 50) + (2:13) * 2
which.min (AIC)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 4&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;names (rs$which[4,])[rs$which[4,]]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] &amp;quot;(Intercept)&amp;quot;                                                            
## [2] &amp;quot;lspline(perc_women, c(0.589918))1&amp;quot;                                      
## [3] &amp;quot;lspline(sum_edu_region_year, c(2.48479))1:lspline(age_n, c(-0.905736))1&amp;quot;
## [4] &amp;quot;lspline(perc_women, c(0.589918))2:lspline(age_n, c(-0.905736))2&amp;quot;        
## [5] &amp;quot;lspline(age_n, c(-0.905736))1:lspline(sum_pop, c(1.54673))1&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- lm (eduyears^-1 ~ 
   lspline(perc_women, c(0.402156)) +                                    
   lspline(sum_edu_region_year, c(68923)):lspline(age_n, c(29.5)) +
   lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5)) +       
   lspline(age_n, c(29.5)):sum_pop,
   weights = tbnum$sum_edu_region_year,
   data = tbnum) 

boxcox(model)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-61&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-1.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 15: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary (model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Call:
## lm(formula = eduyears^-1 ~ lspline(perc_women, c(0.402156)) + 
##     lspline(sum_edu_region_year, c(68923)):lspline(age_n, c(29.5)) + 
##     lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5)) + 
##     lspline(age_n, c(29.5)):sum_pop, data = tbnum, weights = tbnum$sum_edu_region_year)
## 
## Weighted Residuals:
##     Min      1Q  Median      3Q     Max 
## -7.7236 -1.3350 -0.2622  1.2344  6.2808 
## 
## Coefficients:
##                                                                    Estimate
## (Intercept)                                                       6.003e-02
## lspline(perc_women, c(0.402156))1                                 1.614e-01
## lspline(perc_women, c(0.402156))2                                -9.712e-02
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))1  1.680e-09
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))1 -9.445e-10
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))2  1.449e-08
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))2 -1.359e-10
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))1       -1.611e-03
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))1       -2.570e-03
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))2        1.802e-04
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))2        3.535e-03
## lspline(age_n, c(29.5))1:sum_pop                                 -2.162e-10
## lspline(age_n, c(29.5))2:sum_pop                                 -3.873e-10
##                                                                  Std. Error
## (Intercept)                                                       1.629e-03
## lspline(perc_women, c(0.402156))1                                 6.578e-03
## lspline(perc_women, c(0.402156))2                                 2.087e-02
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))1  3.435e-10
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))1  6.753e-10
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))2  4.415e-10
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))2  1.118e-09
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))1        1.893e-04
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))1        7.417e-04
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))2        6.717e-05
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))2        1.212e-04
## lspline(age_n, c(29.5))1:sum_pop                                  1.854e-11
## lspline(age_n, c(29.5))2:sum_pop                                  2.233e-11
##                                                                  t value
## (Intercept)                                                       36.838
## lspline(perc_women, c(0.402156))1                                 24.541
## lspline(perc_women, c(0.402156))2                                 -4.653
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))1   4.890
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))1  -1.399
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))2  32.817
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))2  -0.122
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))1        -8.510
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))1        -3.465
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))2         2.683
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))2        29.180
## lspline(age_n, c(29.5))1:sum_pop                                 -11.660
## lspline(age_n, c(29.5))2:sum_pop                                 -17.345
##                                                                  Pr(&amp;gt;|t|)    
## (Intercept)                                                       &amp;lt; 2e-16 ***
## lspline(perc_women, c(0.402156))1                                 &amp;lt; 2e-16 ***
## lspline(perc_women, c(0.402156))2                                3.30e-06 ***
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))1 1.01e-06 ***
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))1 0.161945    
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))2  &amp;lt; 2e-16 ***
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))2 0.903193    
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))1        &amp;lt; 2e-16 ***
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))1       0.000531 ***
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))2       0.007309 ** 
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))2        &amp;lt; 2e-16 ***
## lspline(age_n, c(29.5))1:sum_pop                                  &amp;lt; 2e-16 ***
## lspline(age_n, c(29.5))2:sum_pop                                  &amp;lt; 2e-16 ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## Residual standard error: 2.069 on 22647 degrees of freedom
## Multiple R-squared:  0.3847, Adjusted R-squared:  0.3844 
## F-statistic:  1180 on 12 and 22647 DF,  p-value: &amp;lt; 2.2e-16&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova (model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: eduyears^-1
##                                                                   Df Sum Sq
## lspline(perc_women, c(0.402156))                                   2  13795
## lspline(sum_edu_region_year, c(68923)):lspline(age_n, c(29.5))     4  29033
## lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5))           4   8736
## lspline(age_n, c(29.5)):sum_pop                                    2   9027
## Residuals                                                      22647  96916
##                                                                Mean Sq F value
## lspline(perc_women, c(0.402156))                                6897.3 1611.75
## lspline(sum_edu_region_year, c(68923)):lspline(age_n, c(29.5))  7258.3 1696.10
## lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5))        2183.9  510.33
## lspline(age_n, c(29.5)):sum_pop                                 4513.4 1054.67
## Residuals                                                          4.3        
##                                                                   Pr(&amp;gt;F)    
## lspline(perc_women, c(0.402156))                               &amp;lt; 2.2e-16 ***
## lspline(sum_edu_region_year, c(68923)):lspline(age_n, c(29.5)) &amp;lt; 2.2e-16 ***
## lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5))       &amp;lt; 2.2e-16 ***
## lspline(age_n, c(29.5)):sum_pop                                &amp;lt; 2.2e-16 ***
## Residuals                                                                   
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot (model)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-62&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-2.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 16: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-63&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-3.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 17: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-64&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-4.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 18: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-65&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-5.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 19: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;binnedplot(predict(model), resid(model))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-66&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-6.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 20: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;halfnorm(rstudent(model))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-67&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-7.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 21: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;% mutate(residuals = residuals(model)) %&amp;gt;% 
  group_by(eduyears, region, year_n, age_n) %&amp;gt;% 
  summarise(residuals = mean(residuals), count = sum(groupsize)) %&amp;gt;%
    ggplot (aes(x = eduyears, y = residuals, size = sqrt(count), colour = year_n)) +
    geom_point() + facet_grid(. ~ age_n)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-68&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-8.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 22: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnumpred &amp;lt;- bind_cols(tbnum, as_tibble(predict(model, tbnum, interval = &amp;quot;confidence&amp;quot;)))

suppressWarnings(multiclass.roc(tbnumpred$eduyears, tbnumpred$fit))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;gt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;lt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;lt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Call:
## multiclass.roc.default(response = tbnumpred$eduyears, predictor = tbnumpred$fit)
## 
## Data: tbnumpred$fit with 7 levels of tbnumpred$eduyears: 8, 9, 10, 12, 13, 15, 22.
## Multi-class area under the curve: 0.6936&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;bs &amp;lt;- function(formula, data, indices) {
  d &amp;lt;- data[indices,] # allows boot to select sample 
  fit &amp;lt;- lm(formula, weights = sum_edu_region_year, data=d)
  return(coef(fit)) 
} 

results &amp;lt;- boot(data = tbnum, statistic = bs, 
   R = 1000, formula = eduyears^-1 ~ 
   lspline(perc_women, c(0.402156)) +                                    
   lspline(sum_edu_region_year, c(68923)):lspline(age_n, c(29.5)) +
   lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5)) +       
   lspline(age_n, c(29.5)):sum_pop,
   weights = tbnum$sum_edu_region_year)

results&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## WEIGHTED BOOTSTRAP
## 
## 
## Call:
## boot(data = tbnum, statistic = bs, R = 1000, weights = tbnum$sum_edu_region_year, 
##     formula = eduyears^-1 ~ lspline(perc_women, c(0.402156)) + 
##         lspline(sum_edu_region_year, c(68923)):lspline(age_n, 
##             c(29.5)) + lspline(perc_women, c(0.402156)):lspline(age_n, 
##         c(29.5)) + lspline(age_n, c(29.5)):sum_pop)
## 
## 
## Bootstrap Statistics :
##           original        bias     std. error      mean(t*)
## t1*   6.002560e-02  6.282966e-03 1.487621e-03  6.630857e-02
## t2*   1.614448e-01 -1.489491e-02 6.393635e-03  1.465499e-01
## t3*  -9.712093e-02  7.221993e-02 1.927104e-02 -2.490101e-02
## t4*   1.679729e-09  4.440291e-09 3.270648e-10  6.120020e-09
## t5*  -9.444671e-10  1.440855e-10 3.744453e-10 -8.003816e-10
## t6*   1.448852e-08 -3.952505e-09 4.193252e-10  1.053602e-08
## t7*  -1.359400e-10  1.468111e-09 5.529310e-10  1.332171e-09
## t8*  -1.610831e-03  6.882804e-05 1.801159e-04 -1.542003e-03
## t9*  -2.570250e-03 -2.067477e-03 6.732789e-04 -4.637727e-03
## t10*  1.801919e-04  7.229534e-04 6.282813e-05  9.031453e-04
## t11*  3.535199e-03 -1.161393e-03 1.113341e-04  2.373805e-03
## t12* -2.161738e-10 -2.930531e-10 1.634625e-11 -5.092269e-10
## t13* -3.872669e-10  6.108726e-11 2.103217e-11 -3.261797e-10&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(results, index=1) # intercept &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-69&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-9.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 23: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;There are a few things I would like to investigate to improve the credibility of the analysis. I will assume that the data can be grouped by year of birth and region and investigate how this will affect the model. I have scaled the weights not to affect the residual standard deviation. I will include some plots for diagnostic purposes. I will assume that each year of birth and each region is a group and set them as random effects and the rest of the predictors as fixed effects. I use the mean age in each age group as the year of birth.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tbnum %&amp;gt;% mutate(yob = year_n - age_n) %&amp;gt;% mutate(region = tbnum$region)

temp &amp;lt;- data.frame(temp)

weights_scaled &amp;lt;- tbtest$sum_edu_region_year / max(tbtest$sum_edu_region_year)

mmodel &amp;lt;- lmer (eduyears^-1 ~ 
   lspline(perc_women, c(0.402156)) +                                    
   lspline(sum_edu_region_year, c(68923)):lspline(age_n, c(29.5)) +
   lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5)) +       
   lspline(age_n, c(29.5)):sum_pop +
   (1|yob) + 
   (1|region),       
   weights = weights_scaled,
   data = temp) &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Some predictor variables are on very different scales: consider
## rescaling&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(mmodel)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-71&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-7-1.png&#34; alt=&#34;A diagnostic plot of the model with random effects components&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 24: A diagnostic plot of the model with random effects components
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;qqnorm (residuals(mmodel), main=&amp;quot;&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-72&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-7-2.png&#34; alt=&#34;A diagnostic plot of the model with random effects components&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 25: A diagnostic plot of the model with random effects components
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary (mmodel)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Linear mixed model fit by REML [&amp;#39;lmerMod&amp;#39;]
## Formula: 
## eduyears^-1 ~ lspline(perc_women, c(0.402156)) + lspline(sum_edu_region_year,  
##     c(68923)):lspline(age_n, c(29.5)) + lspline(perc_women, c(0.402156)):lspline(age_n,  
##     c(29.5)) + lspline(age_n, c(29.5)):sum_pop + (1 | yob) +      (1 | region)
##    Data: temp
## Weights: weights_scaled
## 
## REML criterion at convergence: -107912.7
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -4.1769 -0.6147 -0.1003  0.6108  3.2800 
## 
## Random effects:
##  Groups   Name        Variance  Std.Dev. 
##  yob      (Intercept) 1.053e-04 0.0102603
##  region   (Intercept) 8.113e-07 0.0009007
##  Residual             2.753e-05 0.0052472
## Number of obs: 22660, groups:  yob, 108; region, 8
## 
## Fixed effects:
##                                                                    Estimate
## (Intercept)                                                       3.382e-02
## lspline(perc_women, c(0.402156))1                                 1.806e-01
## lspline(perc_women, c(0.402156))2                                -1.222e-01
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))1  3.692e-10
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))1  1.706e-09
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))2  1.440e-08
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))2 -5.056e-09
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))1        8.518e-04
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))1       -1.818e-03
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))2       -1.046e-03
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))2        2.786e-03
## lspline(age_n, c(29.5))1:sum_pop                                 -1.412e-10
## lspline(age_n, c(29.5))2:sum_pop                                 -3.426e-10
##                                                                  Std. Error
## (Intercept)                                                       2.092e-03
## lspline(perc_women, c(0.402156))1                                 1.757e-02
## lspline(perc_women, c(0.402156))2                                 1.953e-02
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))1  3.244e-10
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))1  6.564e-10
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))2  4.148e-10
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))2  1.112e-09
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))1        5.885e-04
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))1        6.941e-04
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))2        6.737e-05
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))2        1.167e-04
## lspline(age_n, c(29.5))1:sum_pop                                  3.051e-11
## lspline(age_n, c(29.5))2:sum_pop                                  2.143e-11
##                                                                  t value
## (Intercept)                                                       16.167
## lspline(perc_women, c(0.402156))1                                 10.280
## lspline(perc_women, c(0.402156))2                                 -6.258
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))1   1.138
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))1   2.599
## lspline(sum_edu_region_year, c(68923))1:lspline(age_n, c(29.5))2  34.716
## lspline(sum_edu_region_year, c(68923))2:lspline(age_n, c(29.5))2  -4.549
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))1         1.448
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))1        -2.619
## lspline(perc_women, c(0.402156))1:lspline(age_n, c(29.5))2       -15.525
## lspline(perc_women, c(0.402156))2:lspline(age_n, c(29.5))2        23.876
## lspline(age_n, c(29.5))1:sum_pop                                  -4.627
## lspline(age_n, c(29.5))2:sum_pop                                 -15.987&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Correlation matrix not shown by default, as p = 13 &amp;gt; 12.
## Use print(x, correlation=TRUE)  or
##     vcov(x)        if you need it&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## fit warnings:
## Some predictor variables are on very different scales: consider rescaling&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova (mmodel)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
##                                                                Df   Sum Sq
## lspline(perc_women, c(0.402156))                                2 0.243294
## lspline(sum_edu_region_year, c(68923)):lspline(age_n, c(29.5))  4 0.060730
## lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5))        4 0.030402
## lspline(age_n, c(29.5)):sum_pop                                 2 0.014060
##                                                                 Mean Sq F value
## lspline(perc_women, c(0.402156))                               0.121647 4418.15
## lspline(sum_edu_region_year, c(68923)):lspline(age_n, c(29.5)) 0.015182  551.42
## lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5))       0.007600  276.04
## lspline(age_n, c(29.5)):sum_pop                                0.007030  255.32&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;binnedplot(predict(mmodel), resid(mmodel))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-73&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-7-3.png&#34; alt=&#34;A diagnostic plot of the model with random effects components&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 26: A diagnostic plot of the model with random effects components
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;halfnorm(rstudent(mmodel))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-74&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-7-4.png&#34; alt=&#34;A diagnostic plot of the model with random effects components&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 27: A diagnostic plot of the model with random effects components
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;% mutate(residuals = residuals(mmodel)) %&amp;gt;% 
  group_by(eduyears, region, year_n, age_n) %&amp;gt;% 
  summarise(residuals = mean(residuals), count = sum(groupsize)) %&amp;gt;%
    ggplot (aes(x = eduyears, y = residuals, size = sqrt(count), colour = year_n)) +
    geom_point() + facet_grid(. ~ age_n)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-75&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-7-5.png&#34; alt=&#34;A diagnostic plot of the model with random effects components&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 28: A diagnostic plot of the model with random effects components
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnumpred &amp;lt;- bind_cols(temp, as_tibble(predict(mmodel, temp, interval = &amp;quot;confidence&amp;quot;)))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in predict.merMod(mmodel, temp, interval = &amp;quot;confidence&amp;quot;): unused
## arguments ignored&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Calling `as_tibble()` on a vector is discouraged, because the behavior is likely to change in the future. Use `tibble::enframe(name = NULL)` instead.
## This warning is displayed once per session.&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;suppressWarnings (multiclass.roc (tbnumpred$eduyears, tbnumpred$value))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;gt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;lt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;lt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;lt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;gt; cases
## Setting direction: controls &amp;gt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Call:
## multiclass.roc.default(response = tbnumpred$eduyears, predictor = tbnumpred$value)
## 
## Data: tbnumpred$value with 7 levels of tbnumpred$eduyears: 8, 9, 10, 12, 13, 15, 22.
## Multi-class area under the curve: 0.6939&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;mySumm &amp;lt;- function(.) { s &amp;lt;- sigma(.)
    c(beta =getME(., &amp;quot;beta&amp;quot;), sigma = s, sig01 = unname(s * getME(., &amp;quot;theta&amp;quot;))) }

results &amp;lt;- bootMer(mmodel, mySumm, nsim = 1000)

results&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## PARAMETRIC BOOTSTRAP
## 
## 
## Call:
## bootMer(x = mmodel, FUN = mySumm, nsim = 1000)
## 
## 
## Bootstrap Statistics :
##           original        bias     std. error
## t1*   3.382171e-02  3.204383e-05 1.370011e-03
## t2*   1.806110e-01  5.656583e-04 1.586369e-02
## t3*  -1.222301e-01 -1.200144e-04 7.545495e-03
## t4*   3.692235e-10  1.574681e-11 1.758515e-10
## t5*   1.705945e-09 -8.046354e-12 5.355611e-10
## t6*   1.440064e-08 -1.696450e-11 2.268515e-10
## t7*  -5.055769e-09  1.234462e-11 8.717959e-10
## t8*   8.518246e-04 -2.117494e-05 5.396222e-04
## t9*  -1.817991e-03  5.758882e-06 2.800208e-04
## t10* -1.045953e-03  1.165115e-06 3.192411e-05
## t11*  2.786456e-03 -8.257204e-08 6.151912e-05
## t12* -1.411911e-10 -7.934184e-13 2.229494e-11
## t13* -3.426241e-10  1.956803e-13 9.642223e-12
## t14*  5.247231e-03 -3.268970e-03 1.377226e-05
## t15*  1.026026e-02 -6.487712e-06 6.957391e-04
## t16*  9.007187e-04 -1.190123e-05 2.607631e-04&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## 118 warning(s): Model failed to converge with max|grad| = 0.00200096 (tol = 0.002, component 1) (and others)&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(results)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-76&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-7-6.png&#34; alt=&#34;A diagnostic plot of the model with random effects components&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 29: A diagnostic plot of the model with random effects components
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Now let’s see what we have found. I will plot all the models for comparison. I could not get the back transformation in sjPlot to work for the response variable so you will have to endure that the response is the inverse of years of education.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;transformeddata &amp;lt;- tbnum %&amp;gt;%  mutate(eduyears = eduyears ^ -1)

model &amp;lt;- lm (eduyears ~ 
   lspline(perc_women, c(0.402156)) +                                    
   lspline(sum_edu_region_year, c(68923)):lspline(age_n, c(29.5)) +
   lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5)) +       
   lspline(age_n, c(29.5)):sum_pop,
   weights = tbnum$sum_edu_region_year,
   data = transformeddata)

temp &amp;lt;- transformeddata %&amp;gt;% mutate(yob = year_n - age_n) %&amp;gt;% mutate(region = tbnum$region)

temp &amp;lt;- data.frame(temp)

mmodel &amp;lt;- lmer (eduyears ~ 
   lspline(perc_women, c(0.402156)) +                                    
   lspline(sum_edu_region_year, c(68923)):lspline(age_n, c(29.5)) +
   lspline(perc_women, c(0.402156)):lspline(age_n, c(29.5)) +       
   lspline(age_n, c(29.5)):sum_pop +
   (1|yob) + 
   (1|region),       
   weights = weights_scaled,
   data = temp) &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Some predictor variables are on very different scales: consider
## rescaling&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;perc_women&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-81&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-8-1.png&#34; alt=&#34;The significance of the per cent women on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 30: The significance of the per cent women on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (mmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;perc_women&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-82&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-8-2.png&#34; alt=&#34;The significance of the per cent women on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 31: The significance of the per cent women on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = perc_women, y = eduyears )) + 
  labs(
    x = &amp;quot;Per cent women&amp;quot;,
    y = &amp;quot;Years of education&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-83&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-8-3.png&#34; alt=&#34;The significance of the per cent women on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 32: The significance of the per cent women on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;sum_edu_region_year&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-91&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-9-1.png&#34; alt=&#34;The significance of the interaction between the number of persons with the same level of education, region and year, age and age on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 33: The significance of the interaction between the number of persons with the same level of education, region and year, age and age on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (mmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;sum_edu_region_year&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-92&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-9-2.png&#34; alt=&#34;The significance of the interaction between the number of persons with the same level of education, region and year, age and age on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 34: The significance of the interaction between the number of persons with the same level of education, region and year, age and age on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = sum_edu_region_year, y = eduyears, colour = age_n)) + 
  labs(
    x = &amp;quot;# persons with same edulevel, region, year, age&amp;quot;,
    y = &amp;quot;Years of education&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-93&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-9-3.png&#34; alt=&#34;The significance of the interaction between the number of persons with the same level of education, region and year, age and age on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 35: The significance of the interaction between the number of persons with the same level of education, region and year, age and age on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;perc_women&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-101&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-10-1.png&#34; alt=&#34;The significance of the interaction between per cent women and age on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 36: The significance of the interaction between per cent women and age on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (mmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;perc_women&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-102&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-10-2.png&#34; alt=&#34;The significance of the interaction between per cent women and age on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 37: The significance of the interaction between per cent women and age on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = perc_women, y = eduyears, colour = age_n)) + 
  labs(
    x = &amp;quot;Age&amp;quot;,
    y = &amp;quot;Years of education&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-103&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-10-3.png&#34; alt=&#34;The significance of the interaction between per cent women and age on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 38: The significance of the interaction between per cent women and age on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;sum_pop&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-111&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-11-1.png&#34; alt=&#34;The significance of the interaction between the age and population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 39: The significance of the interaction between the age and population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (mmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;sum_pop&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-112&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-11-2.png&#34; alt=&#34;The significance of the interaction between the age and population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 40: The significance of the interaction between the age and population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = age_n, y = eduyears, colour = sum_pop)) + 
  labs(
    x = &amp;quot;Age&amp;quot;,
    y = &amp;quot;Years of education&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-113&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-04-05-the-significance-of-population-size-year-age-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-11-3.png&#34; alt=&#34;The significance of the interaction between the age and population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 41: The significance of the interaction between the age and population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
</description>
    </item>
    
    <item>
      <title>The significance of population size, year, and per cent women on the education level in Sweden</title>
      <link>http://mikaellundqvist.rbind.io/2020/03/20/the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden/</link>
      <pubDate>Fri, 20 Mar 2020 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2020/03/20/the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden/</guid>
      <description>


&lt;p&gt;In twelve posts I have analysed how different factors are related to salaries in Sweden with data from Statistics Sweden. In this post, I will analyse a new dataset from Statistics Sweden, population by region, age, level of education, sex and year. Not knowing exactly what to find I will use a criterion-based procedure to find the model that minimises the AIC. Then I will perform some test to see how robust the model is. Finally, I will plot the findings.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages -------------------------------------------------- tidyverse 1.3.0 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.2.1     v purrr   0.3.3
## v tibble  2.1.3     v dplyr   0.8.3
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.4.0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ----------------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (broom)
library (car)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (sjPlot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Registered S3 methods overwritten by &amp;#39;lme4&amp;#39;:
##   method                          from
##   cooks.distance.influence.merMod car 
##   influence.merMod                car 
##   dfbeta.influence.merMod         car 
##   dfbetas.influence.merMod        car&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (leaps)
library (splines)
library (MASS)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;MASS&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     select&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (mgcv)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: nlme&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;nlme&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     collapse&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## This is mgcv 1.8-31. For overview type &amp;#39;help(&amp;quot;mgcv-package&amp;quot;)&amp;#39;.&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (lmtest)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: zoo&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;zoo&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:base&amp;#39;:
## 
##     as.Date, as.Date.numeric&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (earth)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;earth&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: Formula&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: plotmo&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;plotmo&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: plotrix&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: TeachingDemos&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;TeachingDemos&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (acepack)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;acepack&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (lspline)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;lspline&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (lme4)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: Matrix&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;Matrix&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:tidyr&amp;#39;:
## 
##     expand, pack, unpack&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;lme4&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:nlme&amp;#39;:
## 
##     lmList&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (pROC)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: package &amp;#39;pROC&amp;#39; was built under R version 3.6.3&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Type &amp;#39;citation(&amp;quot;pROC&amp;quot;)&amp;#39; for a citation.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;pROC&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following objects are masked from &amp;#39;package:stats&amp;#39;:
## 
##     cov, smooth, var&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;readfile &amp;lt;- function (file1){read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%
  gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = groupsize) %&amp;gt;%
  drop_na() %&amp;gt;%
  mutate (year_n = parse_number (year))
}

perc_women &amp;lt;- function(x){  
  ifelse (length(x) == 2, x[2] / (x[1] + x[2]), NA)
} 

nuts &amp;lt;- read.csv(&amp;quot;nuts.csv&amp;quot;) %&amp;gt;%
  mutate(NUTS2_sh = substr(NUTS2, 3, 4))&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data table is downloaded from Statistics Sweden. It is saved as a comma-delimited file without heading, UF0506A1.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I will calculate the percentage of women in for the different education levels in the different regions for each year. In my later analysis I will use the number of people in each education level, region and year.&lt;/p&gt;
&lt;p&gt;The table: Population 16-74 years of age by region, highest level of education, age and sex. Year 1985 - 2018 NUTS 2 level 2008- 10 year intervals (16-74)&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb &amp;lt;- readfile(&amp;quot;UF0506A1.csv&amp;quot;) %&amp;gt;%  
  mutate(edulevel = `level of education`) %&amp;gt;%
  group_by(edulevel, region, year, sex) %&amp;gt;%
  mutate(groupsize_all_ages = sum(groupsize)) %&amp;gt;%  
  group_by(edulevel, region, year) %&amp;gt;% 
  mutate (sum_edu_region_year = sum(groupsize)) %&amp;gt;%  
  mutate (perc_women = perc_women (groupsize_all_ages[1:2])) %&amp;gt;% 
  group_by(region, year) %&amp;gt;%
  mutate (sum_pop = sum(groupsize)) %&amp;gt;% rowwise() %&amp;gt;%
  mutate(age_l = unlist(lapply(strsplit(substr(age, 1, 5), &amp;quot;-&amp;quot;), strtoi))[1]) %&amp;gt;%
  rowwise() %&amp;gt;% 
  mutate(age_h = unlist(lapply(strsplit(substr(age, 1, 5), &amp;quot;-&amp;quot;), strtoi))[2]) %&amp;gt;%
  mutate(age_n = (age_l + age_h) / 2) %&amp;gt;%
  left_join(nuts %&amp;gt;% distinct (NUTS2_en, NUTS2_sh), by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `region`/`NUTS2_en` joining character vector and factor,
## coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;numedulevel &amp;lt;- read.csv(&amp;quot;edulevel_1.csv&amp;quot;) 

numedulevel %&amp;gt;%
  knitr::kable(
  booktabs = TRUE,
  caption = &amp;#39;Initial approach, length of education&amp;#39;) &lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-2&#34;&gt;Table 1: &lt;/span&gt;Initial approach, length of education&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;level.of.education&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;eduyears&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;primary and secondary education less than 9 years (ISCED97 1)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;primary and secondary education 9-10 years (ISCED97 2)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;upper secondary education, 2 years or less (ISCED97 3C)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;upper secondary education 3 years (ISCED97 3A)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;post-secondary education, less than 3 years (ISCED97 4+5B)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;14&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;post-secondary education 3 years or more (ISCED97 5A)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;post-graduate education (ISCED97 6)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;19&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;no information about level of educational attainment&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum &amp;lt;- tb %&amp;gt;% 
  right_join(numedulevel, by = c(&amp;quot;level of education&amp;quot; = &amp;quot;level.of.education&amp;quot;)) %&amp;gt;%
  filter(!is.na(eduyears)) %&amp;gt;% 
  drop_na()&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `level of education`/`level.of.education` joining character
## vector and factor, coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  ggplot () +  
    geom_point (mapping = aes(x = NUTS2_sh,y = perc_women, colour = year_n)) +
  facet_grid(. ~ eduyears)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-2&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-2-1.png&#34; alt=&#34;Population by region, level of education, percent women and year, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: Population by region, level of education, percent women and year, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(tbnum)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##     region              age            level of education     sex           
##  Length:22848       Length:22848       Length:22848       Length:22848      
##  Class :character   Class :character   Class :character   Class :character  
##  Mode  :character   Mode  :character   Mode  :character   Mode  :character  
##                                                                             
##                                                                             
##                                                                             
##      year             groupsize         year_n       edulevel        
##  Length:22848       Min.   :    0   Min.   :1985   Length:22848      
##  Class :character   1st Qu.: 1634   1st Qu.:1993   Class :character  
##  Mode  :character   Median : 5646   Median :2002   Mode  :character  
##                     Mean   : 9559   Mean   :2002                     
##                     3rd Qu.:14027   3rd Qu.:2010                     
##                     Max.   :77163   Max.   :2018                     
##  groupsize_all_ages sum_edu_region_year   perc_women        sum_pop       
##  Min.   :    45     Min.   :   366      Min.   :0.1230   Min.   : 266057  
##  1st Qu.: 20033     1st Qu.: 40482      1st Qu.:0.4416   1st Qu.: 515306  
##  Median : 45592     Median : 90871      Median :0.4816   Median : 740931  
##  Mean   : 57353     Mean   :114706      Mean   :0.4641   Mean   : 823034  
##  3rd Qu.: 86203     3rd Qu.:172120      3rd Qu.:0.5217   3rd Qu.:1195658  
##  Max.   :271889     Max.   :486270      Max.   :0.6423   Max.   :1716160  
##      age_l           age_h        age_n         NUTS2_sh        
##  Min.   :16.00   Min.   :24   Min.   :20.00   Length:22848      
##  1st Qu.:25.00   1st Qu.:34   1st Qu.:29.50   Class :character  
##  Median :40.00   Median :49   Median :44.50   Mode  :character  
##  Mean   :40.17   Mean   :49   Mean   :44.58                     
##  3rd Qu.:55.00   3rd Qu.:64   3rd Qu.:59.50                     
##  Max.   :65.00   Max.   :74   Max.   :69.50                     
##     eduyears    
##  Min.   : 8.00  
##  1st Qu.: 9.00  
##  Median :12.00  
##  Mean   :12.57  
##  3rd Qu.:15.00  
##  Max.   :19.00&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In a previous post, I approximated the number of years of education for every education level. Since this approximation is significant for the rest of the analysis I will see if I can do a better approximation. I use Multivariate Adaptive Regression Splines (MARS) to find the permutation of years of education, within the given limitations, which gives the highest adjusted R-Squared value. I choose not to calculate more combinations than between the age of 7 and 19 because I assessed it would take to much time. From the table, we can see that the R-Squared only gains from a higher education year for post-graduate education. A manual test shows that setting years of education to 22 gives a higher R-Squared without getting high residuals.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;educomb &amp;lt;- as_tibble(t(combn(7:19,7))) %&amp;gt;% 
  filter((V6 - V4) &amp;gt; 2) %&amp;gt;% filter((V4 - V2) &amp;gt; 2) %&amp;gt;% 
  filter(V2 &amp;gt; 8) %&amp;gt;% 
  mutate(na = NA)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: `as_tibble.matrix()` requires a matrix with column names or a `.name_repair` argument. Using compatibility `.name_repair`.
## This warning is displayed once per session.&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary_table = vector()

for (i in 1:dim(educomb)[1]) {
  numedulevel[, 2] &amp;lt;- t(educomb[i,])

  suppressWarnings (tbnum &amp;lt;- tb %&amp;gt;% 
    right_join(numedulevel, by = c(&amp;quot;level of education&amp;quot; = &amp;quot;level.of.education&amp;quot;)) %&amp;gt;%
    filter(!is.na(eduyears)) %&amp;gt;% 
    drop_na())

  tbtest &amp;lt;- tbnum %&amp;gt;% 
    dplyr::select(eduyears, sum_pop, sum_edu_region_year, year_n, perc_women)

  mmod &amp;lt;- earth(eduyears ~ ., data = tbtest, nk = 12, degree = 2)

  summary_table &amp;lt;- rbind(summary_table, summary(mmod)$rsq)
}

which.max(summary_table)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 235&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;educomb[which.max(summary_table),] #235&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 1 x 8
##      V1    V2    V3    V4    V5    V6    V7 na   
##   &amp;lt;int&amp;gt; &amp;lt;int&amp;gt; &amp;lt;int&amp;gt; &amp;lt;int&amp;gt; &amp;lt;int&amp;gt; &amp;lt;int&amp;gt; &amp;lt;int&amp;gt; &amp;lt;lgl&amp;gt;
## 1     8     9    10    12    13    15    19 NA&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;numedulevel[, 2] &amp;lt;- t(educomb[235,])

numedulevel[7, 2] &amp;lt;- 22

numedulevel %&amp;gt;%
  knitr::kable(
  booktabs = TRUE,
  caption = &amp;#39;Recalculated length of education&amp;#39;) &lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-3&#34;&gt;Table 2: &lt;/span&gt;Recalculated length of education&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;level.of.education&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;eduyears&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;primary and secondary education less than 9 years (ISCED97 1)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;primary and secondary education 9-10 years (ISCED97 2)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;upper secondary education, 2 years or less (ISCED97 3C)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;upper secondary education 3 years (ISCED97 3A)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;post-secondary education, less than 3 years (ISCED97 4+5B)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;13&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;post-secondary education 3 years or more (ISCED97 5A)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;post-graduate education (ISCED97 6)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;22&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;no information about level of educational attainment&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum &amp;lt;- tb %&amp;gt;% 
  right_join(numedulevel, by = c(&amp;quot;level of education&amp;quot; = &amp;quot;level.of.education&amp;quot;)) %&amp;gt;%
  filter(!is.na(eduyears)) %&amp;gt;% 
  drop_na()&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `level of education`/`level.of.education` joining character
## vector and factor, coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Let’s investigate the shape of the function for the response and predictors. The shape of the predictors has a great impact on the rest of the analysis. I use acepack to fit a model and plot both the response and the predictors.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbtest &amp;lt;- tbnum %&amp;gt;% dplyr::select(sum_pop, sum_edu_region_year, year_n, perc_women)

tbtest &amp;lt;- data.frame(tbtest)

acefit &amp;lt;- ace(tbtest, tbnum$eduyears)

plot(tbnum$eduyears, acefit$ty, xlab = &amp;quot;Years of education&amp;quot;, ylab = &amp;quot;transformed years of education&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-41&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-4-1.png&#34; alt=&#34;Plots of the response and predictors using acepack&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: Plots of the response and predictors using acepack
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(tbtest[,1], acefit$tx[,1], xlab = &amp;quot;Population in region&amp;quot;, ylab = &amp;quot;transformed population in region&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-42&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-4-2.png&#34; alt=&#34;Plots of the response and predictors using acepack&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: Plots of the response and predictors using acepack
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(tbtest[,2], acefit$tx[,2], xlab = &amp;quot;# persons with same edulevel, region, year&amp;quot;, ylab = &amp;quot;transformed # persons with same edulevel, region, year&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-43&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-4-3.png&#34; alt=&#34;Plots of the response and predictors using acepack&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: Plots of the response and predictors using acepack
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(tbtest[,3], acefit$tx[,3], xlab = &amp;quot;Year&amp;quot;, ylab = &amp;quot;transformed year&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-44&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-4-4.png&#34; alt=&#34;Plots of the response and predictors using acepack&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: Plots of the response and predictors using acepack
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(tbtest[,4], acefit$tx[,4], xlab = &amp;quot;Percent women&amp;quot;, ylab = &amp;quot;transformed percent women&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-45&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-4-5.png&#34; alt=&#34;Plots of the response and predictors using acepack&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: Plots of the response and predictors using acepack
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;I use MARS to fit hockey-stick functions for the predictors. I do not wish to overfit by using a better approximation at this point. I will include interactions of degree two.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbtest &amp;lt;- tbnum %&amp;gt;% dplyr::select(eduyears, sum_pop, sum_edu_region_year, year_n, perc_women)

mmod &amp;lt;- earth(eduyears ~ ., data=tbtest, nk = 9, degree = 2)

summary (mmod)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Call: earth(formula=eduyears~., data=tbtest, degree=2, nk=9)
## 
##                                                       coefficients
## (Intercept)                                               9.930701
## h(37001-sum_edu_region_year)                              0.000380
## h(sum_edu_region_year-37001)                              0.000003
## h(0.492816-perc_women)                                    9.900436
## h(perc_women-0.492816)                                   49.719932
## h(1.32988e+06-sum_pop) * h(37001-sum_edu_region_year)     0.000000
## h(sum_pop-1.32988e+06) * h(37001-sum_edu_region_year)     0.000000
## h(sum_edu_region_year-37001) * h(2004-year_n)            -0.000001
## 
## Selected 8 of 9 terms, and 4 of 4 predictors
## Termination condition: Reached nk 9
## Importance: sum_edu_region_year, perc_women, sum_pop, year_n
## Number of terms at each degree of interaction: 1 4 3
## GCV 3.774465    RSS 86099.37    GRSq 0.8049234    RSq 0.8052222&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot (mmod)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-51&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-5-1.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: Hockey-stick functions fit with MARS for the predictors, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plotmo (mmod)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##  plotmo grid:    sum_pop sum_edu_region_year year_n perc_women
##                   740931             90870.5 2001.5  0.4815703&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-52&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-5-2.png&#34; alt=&#34;Hockey-stick functions fit with MARS for the predictors, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: Hockey-stick functions fit with MARS for the predictors, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model_mmod &amp;lt;- lm (eduyears ~ lspline(sum_edu_region_year, c(37001)) + 
              lspline(perc_women, c(0.492816)) + 
              lspline(sum_pop, c(1.32988e+06)):lspline(sum_edu_region_year, c(37001)) +
              lspline(sum_edu_region_year, c(1.32988e+06)):lspline(year_n, c(2004)), 
            data = tbnum) 

summary (model_mmod)$r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.7792166&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova (model_mmod)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: eduyears
##                                                                        Df
## lspline(sum_edu_region_year, c(37001))                                  2
## lspline(perc_women, c(0.492816))                                        2
## lspline(sum_edu_region_year, c(37001)):lspline(sum_pop, c(1329880))     4
## lspline(sum_edu_region_year, c(1329880)):lspline(year_n, c(2004))       2
## Residuals                                                           22837
##                                                                     Sum Sq
## lspline(sum_edu_region_year, c(37001))                              292982
## lspline(perc_women, c(0.492816))                                     39071
## lspline(sum_edu_region_year, c(37001)):lspline(sum_pop, c(1329880))   9629
## lspline(sum_edu_region_year, c(1329880)):lspline(year_n, c(2004))     2763
## Residuals                                                            97595
##                                                                     Mean Sq
## lspline(sum_edu_region_year, c(37001))                               146491
## lspline(perc_women, c(0.492816))                                      19535
## lspline(sum_edu_region_year, c(37001)):lspline(sum_pop, c(1329880))    2407
## lspline(sum_edu_region_year, c(1329880)):lspline(year_n, c(2004))      1382
## Residuals                                                                 4
##                                                                      F value
## lspline(sum_edu_region_year, c(37001))                              34278.55
## lspline(perc_women, c(0.492816))                                     4571.22
## lspline(sum_edu_region_year, c(37001)):lspline(sum_pop, c(1329880))   563.27
## lspline(sum_edu_region_year, c(1329880)):lspline(year_n, c(2004))     323.30
## Residuals                                                                   
##                                                                        Pr(&amp;gt;F)
## lspline(sum_edu_region_year, c(37001))                              &amp;lt; 2.2e-16
## lspline(perc_women, c(0.492816))                                    &amp;lt; 2.2e-16
## lspline(sum_edu_region_year, c(37001)):lspline(sum_pop, c(1329880)) &amp;lt; 2.2e-16
## lspline(sum_edu_region_year, c(1329880)):lspline(year_n, c(2004))   &amp;lt; 2.2e-16
## Residuals                                                                    
##                                                                        
## lspline(sum_edu_region_year, c(37001))                              ***
## lspline(perc_women, c(0.492816))                                    ***
## lspline(sum_edu_region_year, c(37001)):lspline(sum_pop, c(1329880)) ***
## lspline(sum_edu_region_year, c(1329880)):lspline(year_n, c(2004))   ***
## Residuals                                                              
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I will use regsubsets to find the model which minimises the AIC. I will also calculate the Receiver Operating Characteristic (ROC) for the model I find for each level of years of education.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;b &amp;lt;- regsubsets (eduyears ~ (lspline(sum_pop, c(1.32988e+06)) + lspline(perc_women, c(0.492816)) + lspline(year_n, c(2004)) + lspline(sum_edu_region_year, c(37001))) * (lspline(sum_pop, c(1.32988e+06)) + lspline(perc_women, c(0.492816)) + lspline(year_n, c(2004)) + lspline(sum_edu_region_year, c(37001))), data = tbnum, nvmax = 20)

rs &amp;lt;- summary(b)
AIC &amp;lt;- 50 * log (rs$rss / 50) + (2:21) * 2
which.min (AIC)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 9&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;names (rs$which[9,])[rs$which[9,]]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##  [1] &amp;quot;(Intercept)&amp;quot;                                                              
##  [2] &amp;quot;lspline(sum_pop, c(1329880))1&amp;quot;                                            
##  [3] &amp;quot;lspline(sum_edu_region_year, c(37001))2&amp;quot;                                  
##  [4] &amp;quot;lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))1&amp;quot;          
##  [5] &amp;quot;lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))1&amp;quot;                  
##  [6] &amp;quot;lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))1&amp;quot;    
##  [7] &amp;quot;lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))1&amp;quot;              
##  [8] &amp;quot;lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))1&amp;quot;              
##  [9] &amp;quot;lspline(perc_women, c(0.492816))1:lspline(sum_edu_region_year, c(37001))2&amp;quot;
## [10] &amp;quot;lspline(year_n, c(2004))1:lspline(sum_edu_region_year, c(37001))2&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- lm(eduyears ~ 
  lspline(sum_pop, c(1329880)) + 
  lspline(sum_edu_region_year, c(37001)) + 
  lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816)) +
  lspline(sum_pop, c(1329880)):lspline(year_n, c(2004)) +
  lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001)) +
  lspline(perc_women, c(0.492816)):lspline(year_n, c(2004)) +
  lspline(perc_women, c(0.492816)):lspline(sum_edu_region_year, c(37001)) +
  lspline(year_n, c(2004)):lspline(sum_edu_region_year, c(37001)), 
  data = tbnum) 

summary (model)$r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.8455547&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova (model)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
## 
## Response: eduyears
##                                                                            Df
## lspline(sum_pop, c(1329880))                                                2
## lspline(sum_edu_region_year, c(37001))                                      2
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))               4
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                       4
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))         4
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))                   4
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816))     4
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))             4
## Residuals                                                               22819
##                                                                         Sum Sq
## lspline(sum_pop, c(1329880))                                                 0
## lspline(sum_edu_region_year, c(37001))                                  306779
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))            35378
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                      775
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))       7224
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))                 8932
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816))   6979
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))           7700
## Residuals                                                                68271
##                                                                         Mean Sq
## lspline(sum_pop, c(1329880))                                                  0
## lspline(sum_edu_region_year, c(37001))                                   153389
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))              8844
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                       194
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))        1806
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))                  2233
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816))    1745
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))            1925
## Residuals                                                                     3
##                                                                          F value
## lspline(sum_pop, c(1329880))                                                0.00
## lspline(sum_edu_region_year, c(37001))                                  51269.26
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))            2956.20
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                      64.80
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))       603.67
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))                 746.37
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816))   583.19
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))           643.44
## Residuals                                                                       
##                                                                         Pr(&amp;gt;F)
## lspline(sum_pop, c(1329880))                                                 1
## lspline(sum_edu_region_year, c(37001))                                  &amp;lt;2e-16
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))           &amp;lt;2e-16
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                   &amp;lt;2e-16
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))     &amp;lt;2e-16
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))               &amp;lt;2e-16
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816)) &amp;lt;2e-16
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))         &amp;lt;2e-16
## Residuals                                                                     
##                                                                            
## lspline(sum_pop, c(1329880))                                               
## lspline(sum_edu_region_year, c(37001))                                  ***
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))           ***
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                   ***
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))     ***
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))               ***
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816)) ***
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))         ***
## Residuals                                                                  
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot (model)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-61&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-1.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-62&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-2.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 10: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-63&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-3.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 11: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-64&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-6-4.png&#34; alt=&#34;Find the model that minimises the AIC, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 12: Find the model that minimises the AIC, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnumpred &amp;lt;- bind_cols(tbnum, as_tibble(predict(model, tbnum, interval = &amp;quot;confidence&amp;quot;)))

suppressWarnings(multiclass.roc(tbnumpred$eduyears, tbnumpred$fit))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;gt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Call:
## multiclass.roc.default(response = tbnumpred$eduyears, predictor = tbnumpred$fit)
## 
## Data: tbnumpred$fit with 7 levels of tbnumpred$eduyears: 8, 9, 10, 12, 13, 15, 22.
## Multi-class area under the curve: 0.8743&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;There are a few things I would like to investigate to improve the credibility of the analysis. First, the study is a longitudinal study. A great proportion of people is measured each year. The majority of the people in the region remains in the region from year to year. I will assume that each birthyear and each region is a group and set them as random effects and the rest of the predictors as fixed effects. I use the mean age in each age group as the year of birth.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tbnum %&amp;gt;% mutate(yob = year_n - age_n) %&amp;gt;% mutate(region = tbnum$region)

mmodel &amp;lt;- lmer(eduyears ~
  lspline(sum_pop, c(1329880)) + 
  lspline(sum_edu_region_year, c(37001)) + 
  lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816)) +
  lspline(sum_pop, c(1329880)):lspline(year_n, c(2004)) +
  lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001)) +
  lspline(perc_women, c(0.492816)):lspline(year_n, c(2004)) +
  lspline(perc_women, c(0.492816)):lspline(sum_edu_region_year, c(37001)) +
  lspline(year_n, c(2004)):lspline(sum_edu_region_year, c(37001)) +
  (1|yob) + 
  (1|region),
  data = temp)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Some predictor variables are on very different scales: consider
## rescaling&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## boundary (singular) fit: see ?isSingular&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(mmodel)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-71&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-7-1.png&#34; alt=&#34;A diagnostic plot of the model with random effects components&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 13: A diagnostic plot of the model with random effects components
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;qqnorm (residuals(mmodel), main=&amp;quot;&amp;quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-72&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-7-2.png&#34; alt=&#34;A diagnostic plot of the model with random effects components&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 14: A diagnostic plot of the model with random effects components
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary (mmodel)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Linear mixed model fit by REML [&amp;#39;lmerMod&amp;#39;]
## Formula: 
## eduyears ~ lspline(sum_pop, c(1329880)) + lspline(sum_edu_region_year,  
##     c(37001)) + lspline(sum_pop, c(1329880)):lspline(perc_women,  
##     c(0.492816)) + lspline(sum_pop, c(1329880)):lspline(year_n,  
##     c(2004)) + lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year,  
##     c(37001)) + lspline(perc_women, c(0.492816)):lspline(year_n,  
##     c(2004)) + lspline(perc_women, c(0.492816)):lspline(sum_edu_region_year,  
##     c(37001)) + lspline(year_n, c(2004)):lspline(sum_edu_region_year,  
##     c(37001)) + (1 | yob) + (1 | region)
##    Data: temp
## 
## REML criterion at convergence: 90514.4
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -5.1175 -0.5978 -0.0137  0.5766  2.8735 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  yob      (Intercept) 0.000    0.000   
##  region   (Intercept) 1.115    1.056   
##  Residual             2.970    1.723   
## Number of obs: 22848, groups:  yob, 108; region, 8
## 
## Fixed effects:
##                                                                             Estimate
## (Intercept)                                                                2.516e+01
## lspline(sum_pop, c(1329880))1                                              1.514e-04
## lspline(sum_pop, c(1329880))2                                              2.912e-03
## lspline(sum_edu_region_year, c(37001))1                                    2.314e-03
## lspline(sum_edu_region_year, c(37001))2                                   -2.288e-03
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))1            5.502e-05
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))1            7.840e-05
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))2           -2.061e-05
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))2            1.467e-05
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))1                   -7.788e-08
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))1                   -1.428e-06
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))2                   -3.009e-07
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))2                    1.430e-07
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))1     -4.707e-10
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))1     -2.387e-09
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))2      2.554e-13
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))2      1.137e-12
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))1               -1.659e-02
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))1                3.580e-02
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))2                3.888e-01
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))2               -1.008e+00
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))1  9.201e-05
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))1 -4.149e-04
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))2 -1.441e-04
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))2  1.086e-04
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))1         -1.211e-06
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))1          1.240e-06
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))2         -2.615e-06
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))2          1.146e-06
##                                                                           Std. Error
## (Intercept)                                                                6.548e-01
## lspline(sum_pop, c(1329880))1                                              1.494e-05
## lspline(sum_pop, c(1329880))2                                              6.394e-03
## lspline(sum_edu_region_year, c(37001))1                                    3.150e-04
## lspline(sum_edu_region_year, c(37001))2                                    7.229e-05
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))1            1.344e-06
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))1            1.213e-05
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))2            2.853e-06
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))2            1.540e-05
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))1                    7.362e-09
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))1                    3.191e-06
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))2                    1.349e-08
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))2                    7.352e-08
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))1      9.596e-12
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))1      8.271e-11
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))2      7.991e-13
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))2      2.836e-12
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))1                4.545e-04
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))1                4.504e-03
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))2                3.671e-02
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))2                9.737e-02
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))1  2.688e-05
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))1  1.117e-05
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))2  2.526e-04
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))2  1.429e-05
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))1          1.586e-07
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))1          3.623e-08
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))2          4.441e-07
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))2          6.085e-08
##                                                                           t value
## (Intercept)                                                                38.420
## lspline(sum_pop, c(1329880))1                                              10.137
## lspline(sum_pop, c(1329880))2                                               0.455
## lspline(sum_edu_region_year, c(37001))1                                     7.345
## lspline(sum_edu_region_year, c(37001))2                                   -31.645
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))1            40.921
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))1             6.463
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))2            -7.226
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))2             0.952
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))1                   -10.579
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))1                    -0.448
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))2                   -22.303
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))2                     1.945
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))1     -49.052
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))1     -28.855
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))2       0.320
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))2       0.401
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))1               -36.497
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))1                 7.949
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))2                10.593
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))2               -10.350
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))1   3.423
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))1 -37.150
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))2  -0.571
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))2   7.602
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))1          -7.639
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))1          34.226
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))2          -5.887
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))2          18.833&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Correlation matrix not shown by default, as p = 29 &amp;gt; 12.
## Use print(x, correlation=TRUE)  or
##     vcov(x)        if you need it&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## fit warnings:
## Some predictor variables are on very different scales: consider rescaling
## convergence code: 0
## boundary (singular) fit: see ?isSingular&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova (mmodel)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Variance Table
##                                                                         Df
## lspline(sum_pop, c(1329880))                                             2
## lspline(sum_edu_region_year, c(37001))                                   2
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))            4
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                    4
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))      4
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))                4
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816))  4
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))          4
##                                                                         Sum Sq
## lspline(sum_pop, c(1329880))                                                 0
## lspline(sum_edu_region_year, c(37001))                                  308190
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))            35415
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                      589
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))       7737
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))                 8202
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816))   7316
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))           6809
##                                                                         Mean Sq
## lspline(sum_pop, c(1329880))                                                  0
## lspline(sum_edu_region_year, c(37001))                                   154095
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))              8854
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                       147
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))        1934
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))                  2051
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816))    1829
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))            1702
##                                                                           F value
## lspline(sum_pop, c(1329880))                                                0.000
## lspline(sum_edu_region_year, c(37001))                                  51879.188
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))            2980.805
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                      49.613
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))       651.234
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))                 690.377
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816))   615.763
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))           573.138&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnumpred &amp;lt;- bind_cols(temp, as_tibble(predict(mmodel, temp, interval = &amp;quot;confidence&amp;quot;)))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in predict.merMod(mmodel, temp, interval = &amp;quot;confidence&amp;quot;): unused
## arguments ignored&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Calling `as_tibble()` on a vector is discouraged, because the behavior is likely to change in the future. Use `tibble::enframe(name = NULL)` instead.
## This warning is displayed once per session.&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;suppressWarnings (multiclass.roc (tbnumpred$eduyears, tbnumpred$value))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;lt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;gt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Call:
## multiclass.roc.default(response = tbnumpred$eduyears, predictor = tbnumpred$value)
## 
## Data: tbnumpred$value with 7 levels of tbnumpred$eduyears: 8, 9, 10, 12, 13, 15, 22.
## Multi-class area under the curve: 0.8754&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Another problem could be that the response variable is limited in its range. To get more insight about this issue we could model with Poisson regression.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;pmodel &amp;lt;- glm(eduyears ~ 
  lspline(sum_pop, c(1329880)) + 
  lspline(sum_edu_region_year, c(37001)) + 
  lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816)) +
  lspline(sum_pop, c(1329880)):lspline(year_n, c(2004)) +
  lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001)) +
  lspline(perc_women, c(0.492816)):lspline(year_n, c(2004)) +
  lspline(perc_women, c(0.492816)):lspline(sum_edu_region_year, c(37001)) +
  lspline(year_n, c(2004)):lspline(sum_edu_region_year, c(37001)),
  family = poisson,
  data = tbnum) 

plot (pmodel)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-81&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-8-1.png&#34; alt=&#34;A diagnostic plot of Poisson regression&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 15: A diagnostic plot of Poisson regression
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-82&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-8-2.png&#34; alt=&#34;A diagnostic plot of Poisson regression&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 16: A diagnostic plot of Poisson regression
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-83&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-8-3.png&#34; alt=&#34;A diagnostic plot of Poisson regression&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 17: A diagnostic plot of Poisson regression
&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-84&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-8-4.png&#34; alt=&#34;A diagnostic plot of Poisson regression&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 18: A diagnostic plot of Poisson regression
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnumpred &amp;lt;- bind_cols(tbnum, as_tibble(predict(pmodel, tbnum, interval = &amp;quot;confidence&amp;quot;)))

suppressWarnings (multiclass.roc (tbnumpred$eduyears, tbnumpred$value))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;gt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases
## Setting direction: controls &amp;lt; cases&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Call:
## multiclass.roc.default(response = tbnumpred$eduyears, predictor = tbnumpred$value)
## 
## Data: tbnumpred$value with 7 levels of tbnumpred$eduyears: 8, 9, 10, 12, 13, 15, 22.
## Multi-class area under the curve: 0.8716&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary (pmodel)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Call:
## glm(formula = eduyears ~ lspline(sum_pop, c(1329880)) + lspline(sum_edu_region_year, 
##     c(37001)) + lspline(sum_pop, c(1329880)):lspline(perc_women, 
##     c(0.492816)) + lspline(sum_pop, c(1329880)):lspline(year_n, 
##     c(2004)) + lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, 
##     c(37001)) + lspline(perc_women, c(0.492816)):lspline(year_n, 
##     c(2004)) + lspline(perc_women, c(0.492816)):lspline(sum_edu_region_year, 
##     c(37001)) + lspline(year_n, c(2004)):lspline(sum_edu_region_year, 
##     c(37001)), family = poisson, data = tbnum)
## 
## Deviance Residuals: 
##      Min        1Q    Median        3Q       Max  
## -2.32031  -0.33091  -0.01716   0.30301   1.40215  
## 
## Coefficients:
##                                                                             Estimate
## (Intercept)                                                                3.403e+00
## lspline(sum_pop, c(1329880))1                                              5.825e-06
## lspline(sum_pop, c(1329880))2                                             -8.868e-05
## lspline(sum_edu_region_year, c(37001))1                                    3.722e-04
## lspline(sum_edu_region_year, c(37001))2                                   -2.310e-04
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))1            3.838e-06
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))1            8.103e-06
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))2           -2.276e-06
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))2           -3.732e-06
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))1                   -3.188e-09
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))1                    4.535e-08
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))2                   -2.600e-08
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))2                    1.616e-08
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))1     -2.870e-11
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))1     -1.718e-10
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))2     -2.527e-13
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))2     -2.193e-14
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))1               -9.758e-04
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))1                2.556e-03
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))2                3.188e-02
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))2               -1.221e-01
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))1 -1.020e-05
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))1 -2.991e-05
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))2  1.916e-05
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))2  1.271e-05
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))1         -1.874e-07
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))1          1.224e-07
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))2         -1.952e-07
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))2          1.122e-07
##                                                                           Std. Error
## (Intercept)                                                                3.236e-02
## lspline(sum_pop, c(1329880))1                                              1.792e-06
## lspline(sum_pop, c(1329880))2                                              9.916e-04
## lspline(sum_edu_region_year, c(37001))1                                    4.837e-05
## lspline(sum_edu_region_year, c(37001))2                                    1.222e-05
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))1            1.962e-07
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))1            2.131e-06
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))2            4.682e-07
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))2            2.516e-06
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))1                    9.022e-10
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))1                    4.948e-07
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))2                    1.917e-09
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))2                    1.155e-08
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))1      1.422e-12
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))1      1.343e-11
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))2      1.161e-13
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))2      4.747e-13
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))1                6.510e-05
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))1                6.648e-04
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))2                5.260e-03
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))2                1.564e-02
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))1  4.161e-06
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))1  1.813e-06
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))2  3.734e-05
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))2  2.408e-06
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))1          2.435e-08
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))1          6.124e-09
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))2          6.510e-08
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))2          1.002e-08
##                                                                           z value
## (Intercept)                                                               105.166
## lspline(sum_pop, c(1329880))1                                               3.251
## lspline(sum_pop, c(1329880))2                                              -0.089
## lspline(sum_edu_region_year, c(37001))1                                     7.694
## lspline(sum_edu_region_year, c(37001))2                                   -18.907
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))1            19.559
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))1             3.803
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))2            -4.861
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))2            -1.483
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))1                    -3.534
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))1                     0.092
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))2                   -13.558
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))2                     1.400
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))1     -20.183
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))1     -12.790
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))2      -2.176
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))2      -0.046
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))1               -14.991
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))1                 3.845
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))2                 6.060
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))2                -7.810
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))1  -2.451
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))1 -16.498
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))2   0.513
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))2   5.280
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))1          -7.698
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))1          19.994
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))2          -2.998
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))2          11.202
##                                                                           Pr(&amp;gt;|z|)
## (Intercept)                                                                &amp;lt; 2e-16
## lspline(sum_pop, c(1329880))1                                             0.001151
## lspline(sum_pop, c(1329880))2                                             0.928739
## lspline(sum_edu_region_year, c(37001))1                                   1.42e-14
## lspline(sum_edu_region_year, c(37001))2                                    &amp;lt; 2e-16
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))1            &amp;lt; 2e-16
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))1           0.000143
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))2           1.17e-06
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))2           0.138097
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))1                   0.000410
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))1                   0.926973
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))2                    &amp;lt; 2e-16
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))2                   0.161556
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))1      &amp;lt; 2e-16
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))1      &amp;lt; 2e-16
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))2     0.029521
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))2     0.963157
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))1                &amp;lt; 2e-16
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))1               0.000121
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))2               1.36e-09
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))2               5.70e-15
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))1 0.014246
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))1  &amp;lt; 2e-16
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))2 0.607856
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))2 1.29e-07
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))1         1.39e-14
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))1          &amp;lt; 2e-16
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))2         0.002713
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))2          &amp;lt; 2e-16
##                                                                              
## (Intercept)                                                               ***
## lspline(sum_pop, c(1329880))1                                             ** 
## lspline(sum_pop, c(1329880))2                                                
## lspline(sum_edu_region_year, c(37001))1                                   ***
## lspline(sum_edu_region_year, c(37001))2                                   ***
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))1           ***
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))1           ***
## lspline(sum_pop, c(1329880))1:lspline(perc_women, c(0.492816))2           ***
## lspline(sum_pop, c(1329880))2:lspline(perc_women, c(0.492816))2              
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))1                   ***
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))1                      
## lspline(sum_pop, c(1329880))1:lspline(year_n, c(2004))2                   ***
## lspline(sum_pop, c(1329880))2:lspline(year_n, c(2004))2                      
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))1     ***
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))1     ***
## lspline(sum_pop, c(1329880))1:lspline(sum_edu_region_year, c(37001))2     *  
## lspline(sum_pop, c(1329880))2:lspline(sum_edu_region_year, c(37001))2        
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))1               ***
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))1               ***
## lspline(perc_women, c(0.492816))1:lspline(year_n, c(2004))2               ***
## lspline(perc_women, c(0.492816))2:lspline(year_n, c(2004))2               ***
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))1 *  
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))1 ***
## lspline(sum_edu_region_year, c(37001))1:lspline(perc_women, c(0.492816))2    
## lspline(sum_edu_region_year, c(37001))2:lspline(perc_women, c(0.492816))2 ***
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))1         ***
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))1         ***
## lspline(sum_edu_region_year, c(37001))1:lspline(year_n, c(2004))2         ** 
## lspline(sum_edu_region_year, c(37001))2:lspline(year_n, c(2004))2         ***
## ---
## Signif. codes:  0 &amp;#39;***&amp;#39; 0.001 &amp;#39;**&amp;#39; 0.01 &amp;#39;*&amp;#39; 0.05 &amp;#39;.&amp;#39; 0.1 &amp;#39; &amp;#39; 1
## 
## (Dispersion parameter for poisson family taken to be 1)
## 
##     Null deviance: 32122.2  on 22847  degrees of freedom
## Residual deviance:  5899.4  on 22819  degrees of freedom
## AIC: 105166
## 
## Number of Fisher Scoring iterations: 4&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova (pmodel)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Analysis of Deviance Table
## 
## Model: poisson, link: log
## 
## Response: eduyears
## 
## Terms added sequentially (first to last)
## 
## 
##                                                                         Df
## NULL                                                                      
## lspline(sum_pop, c(1329880))                                             2
## lspline(sum_edu_region_year, c(37001))                                   2
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))            4
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                    4
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))      4
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))                4
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816))  4
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))          4
##                                                                         Deviance
## NULL                                                                            
## lspline(sum_pop, c(1329880))                                                 0.0
## lspline(sum_edu_region_year, c(37001))                                   21027.5
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))             2729.6
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                       51.2
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))        528.8
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))                  601.3
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816))    502.2
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))            782.2
##                                                                         Resid. Df
## NULL                                                                        22847
## lspline(sum_pop, c(1329880))                                                22845
## lspline(sum_edu_region_year, c(37001))                                      22843
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))               22839
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                       22835
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))         22831
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))                   22827
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816))     22823
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))             22819
##                                                                         Resid. Dev
## NULL                                                                         32122
## lspline(sum_pop, c(1329880))                                                 32122
## lspline(sum_edu_region_year, c(37001))                                       11095
## lspline(sum_pop, c(1329880)):lspline(perc_women, c(0.492816))                 8365
## lspline(sum_pop, c(1329880)):lspline(year_n, c(2004))                         8314
## lspline(sum_pop, c(1329880)):lspline(sum_edu_region_year, c(37001))           7785
## lspline(perc_women, c(0.492816)):lspline(year_n, c(2004))                     7184
## lspline(sum_edu_region_year, c(37001)):lspline(perc_women, c(0.492816))       6682
## lspline(sum_edu_region_year, c(37001)):lspline(year_n, c(2004))               5899&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Now let’s see what we have found. Note that the models do not handle extrapolation well. I will plot all the models for comparison.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sum_pop&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-91&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-9-1.png&#34; alt=&#34;The significance of the population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 19: The significance of the population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (mmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sum_pop&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-92&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-9-2.png&#34; alt=&#34;The significance of the population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 20: The significance of the population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (pmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sum_pop&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-93&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-9-3.png&#34; alt=&#34;The significance of the population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 21: The significance of the population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sum_edu_region_year&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-101&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-10-1.png&#34; alt=&#34;The significance of the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 22: The significance of the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (mmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sum_edu_region_year&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-102&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-10-2.png&#34; alt=&#34;The significance of the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 23: The significance of the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (pmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sum_edu_region_year&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-103&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-10-3.png&#34; alt=&#34;The significance of the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 24: The significance of the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  ggplot () +  
    geom_point (mapping = aes(x = sum_edu_region_year, y = eduyears)) + 
  labs(
    x = &amp;quot;# persons with same edulevel, region, year&amp;quot;,
    y = &amp;quot;Years of education&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-104&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-10-4.png&#34; alt=&#34;The significance of the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 25: The significance of the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;perc_women&amp;quot;, &amp;quot;sum_pop&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-111&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-11-1.png&#34; alt=&#34;The significance of the interaction between per cent women and population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 26: The significance of the interaction between per cent women and population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (mmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;perc_women&amp;quot;, &amp;quot;sum_pop&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-112&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-11-2.png&#34; alt=&#34;The significance of the interaction between per cent women and population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 27: The significance of the interaction between per cent women and population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (pmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;perc_women&amp;quot;, &amp;quot;sum_pop&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-113&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-11-3.png&#34; alt=&#34;The significance of the interaction between per cent women and population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 28: The significance of the interaction between per cent women and population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = perc_women, y = eduyears, colour = sum_pop)) + 
  labs(
    x = &amp;quot;Percent women&amp;quot;,
    y = &amp;quot;Years of education&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-114&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-11-4.png&#34; alt=&#34;The significance of the interaction between per cent women and population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 29: The significance of the interaction between per cent women and population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;sum_pop&amp;quot;)) &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-121&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-12-1.png&#34; alt=&#34;The significance of the interaction between the population in the region and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 30: The significance of the interaction between the population in the region and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (mmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;sum_pop&amp;quot;)) &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-122&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-12-2.png&#34; alt=&#34;The significance of the interaction between the population in the region and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 31: The significance of the interaction between the population in the region and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (pmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;sum_pop&amp;quot;)) &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-123&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-12-3.png&#34; alt=&#34;The significance of the interaction between the population in the region and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 32: The significance of the interaction between the population in the region and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = sum_pop, y = eduyears, colour = year_n)) + 
  labs(
    x = &amp;quot;Population in region&amp;quot;,
    y = &amp;quot;Years of education&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-124&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-12-4.png&#34; alt=&#34;The significance of the interaction between the population in the region and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 33: The significance of the interaction between the population in the region and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sum_edu_region_year&amp;quot;, &amp;quot;sum_pop&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-131&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-13-1.png&#34; alt=&#34;The significance of the interaction between the number of persons with the same level of education, region and year and population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 34: The significance of the interaction between the number of persons with the same level of education, region and year and population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (mmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sum_edu_region_year&amp;quot;, &amp;quot;sum_pop&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-132&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-13-2.png&#34; alt=&#34;The significance of the interaction between the number of persons with the same level of education, region and year and population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 35: The significance of the interaction between the number of persons with the same level of education, region and year and population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (pmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sum_edu_region_year&amp;quot;, &amp;quot;sum_pop&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-133&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-13-3.png&#34; alt=&#34;The significance of the interaction between the number of persons with the same level of education, region and year and population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 36: The significance of the interaction between the number of persons with the same level of education, region and year and population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = sum_edu_region_year, y = eduyears, colour = sum_pop)) + 
  labs(
    x = &amp;quot;# persons with same edulevel, region, year&amp;quot;,
    y = &amp;quot;Years of education&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-134&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-13-4.png&#34; alt=&#34;The significance of the interaction between the number of persons with the same level of education, region and year and population in the region on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 37: The significance of the interaction between the number of persons with the same level of education, region and year and population in the region on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;perc_women&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-141&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-14-1.png&#34; alt=&#34;The significance of the interaction between per cent women and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 38: The significance of the interaction between per cent women and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (mmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;perc_women&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-142&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-14-2.png&#34; alt=&#34;The significance of the interaction between per cent women and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 39: The significance of the interaction between per cent women and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (pmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;perc_women&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-143&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-14-3.png&#34; alt=&#34;The significance of the interaction between per cent women and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 40: The significance of the interaction between per cent women and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = perc_women, y = eduyears, colour = year_n)) + 
  labs(
    x = &amp;quot;Percent women&amp;quot;,
    y = &amp;quot;Years of education&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-144&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-14-4.png&#34; alt=&#34;The significance of the interaction between per cent women and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 41: The significance of the interaction between per cent women and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;perc_women&amp;quot;, &amp;quot;sum_edu_region_year&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-151&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-15-1.png&#34; alt=&#34;The significance of the interaction between the number of persons with the same level of education, region and year and per cent women on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 42: The significance of the interaction between the number of persons with the same level of education, region and year and per cent women on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (mmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;perc_women&amp;quot;, &amp;quot;sum_edu_region_year&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-152&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-15-2.png&#34; alt=&#34;The significance of the interaction between the number of persons with the same level of education, region and year and per cent women on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 43: The significance of the interaction between the number of persons with the same level of education, region and year and per cent women on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (pmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;perc_women&amp;quot;, &amp;quot;sum_edu_region_year&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-153&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-15-3.png&#34; alt=&#34;The significance of the interaction between the number of persons with the same level of education, region and year and per cent women on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 44: The significance of the interaction between the number of persons with the same level of education, region and year and per cent women on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = sum_edu_region_year, y = eduyears, colour = perc_women)) + 
  labs(
    x = &amp;quot;# persons with same edulevel, region, year&amp;quot;,
    y = &amp;quot;Years of education&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-154&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-15-4.png&#34; alt=&#34;The significance of the interaction between the number of persons with the same level of education, region and year and per cent women on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 45: The significance of the interaction between the number of persons with the same level of education, region and year and per cent women on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;sum_edu_region_year&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-161&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-16-1.png&#34; alt=&#34;The significance of the interaction between year and the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 46: The significance of the interaction between year and the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (mmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;sum_edu_region_year&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-162&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-16-2.png&#34; alt=&#34;The significance of the interaction between year and the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 47: The significance of the interaction between year and the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model (pmodel, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;sum_edu_region_year&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-163&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-16-3.png&#34; alt=&#34;The significance of the interaction between year and the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 48: The significance of the interaction between year and the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum %&amp;gt;%
  ggplot () +  
    geom_jitter (mapping = aes(x = sum_edu_region_year, y = eduyears, colour = year_n)) + 
  labs(
    x = &amp;quot;# persons with same edulevel, region, year&amp;quot;,
    y = &amp;quot;Years of education&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-164&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-03-20-the-significance-of-population-size-year-and-per-cent-women-on-the-education-level-in-sweden_files/figure-html/unnamed-chunk-16-4.png&#34; alt=&#34;The significance of the interaction between year and the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 49: The significance of the interaction between year and the number of persons with the same level of education, region and year on the level of education, Year 1985 - 2018
&lt;/p&gt;
&lt;/div&gt;
</description>
    </item>
    
    <item>
      <title>The significance of the sector on the salary in Sweden, a comparison between different occupational groups, part 3</title>
      <link>http://mikaellundqvist.rbind.io/2020/02/29/the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3/</link>
      <pubDate>Sat, 29 Feb 2020 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2020/02/29/the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3/</guid>
      <description>


&lt;p&gt;To complete the analysis on the significance of the sector on the salary for different occupational groups in Sweden I will in this post examine the correlation between salary and sector using statistics for education.&lt;/p&gt;
&lt;p&gt;The F-value from the Anova table is used as the single value to discriminate how much the region and salary correlates. For exploratory analysis, the Anova value seems good enough.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages --------------------------------------------------- tidyverse 1.3.0 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.2.1     v purrr   0.3.3
## v tibble  2.1.3     v dplyr   0.8.3
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.4.0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ------------------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (broom)
library (car)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (sjPlot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Registered S3 methods overwritten by &amp;#39;lme4&amp;#39;:
##   method                          from
##   cooks.distance.influence.merMod car 
##   influence.merMod                car 
##   dfbeta.influence.merMod         car 
##   dfbetas.influence.merMod        car&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Learn more about sjPlot with &amp;#39;browseVignettes(&amp;quot;sjPlot&amp;quot;)&amp;#39;.&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;readfile &amp;lt;- function (file1){read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%
  gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = salary) %&amp;gt;%
  drop_na() %&amp;gt;%
  mutate (year_n = parse_number (year))
}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data table is downloaded from Statistics Sweden. It is saved as a comma-delimited file without heading, 000000CY.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I have renamed the file to 000000CY_sector.csv because the filename 000000CY.csv was used in a previous post.&lt;/p&gt;
&lt;p&gt;The table: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by sector, occupational group (SSYK 2012), sex and educational level (SUN). Year 2014 - 2018 Monthly salary 1-3 public sector 4-5 private sector&lt;/p&gt;
&lt;p&gt;In the plot and tables, you can also find information on how the increase in salaries per year for each occupational group is affected when the interactions are taken into account.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb &amp;lt;- readfile(&amp;quot;000000CY_sector.csv&amp;quot;) %&amp;gt;% 
  mutate(edulevel = `level of education`)

numedulevel &amp;lt;- read.csv(&amp;quot;edulevel.csv&amp;quot;) 

numedulevel %&amp;gt;%
  knitr::kable(
  booktabs = TRUE,
  caption = &amp;#39;Initial approach, length of education&amp;#39;) &lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-2&#34;&gt;Table 1: &lt;/span&gt;Initial approach, length of education&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;level.of.education&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;eduyears&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;primary and secondary education 9-10 years (ISCED97 2)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;upper secondary education, 2 years or less (ISCED97 3C)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;upper secondary education 3 years (ISCED97 3A)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;post-secondary education, less than 3 years (ISCED97 4+5B)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;14&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;post-secondary education 3 years or more (ISCED97 5A)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;post-graduate education (ISCED97 6)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;19&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;no information about level of educational attainment&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tbnum &amp;lt;- tb %&amp;gt;% 
  right_join(numedulevel, by = c(&amp;quot;level of education&amp;quot; = &amp;quot;level.of.education&amp;quot;)) %&amp;gt;%
  filter(!is.na(eduyears)) %&amp;gt;%
  mutate(eduyears = factor(eduyears))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `level of education`/`level.of.education` joining character
## vector and factor, coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary_table = vector()
anova_table = vector()

for (i in unique(tbnum$`occuptional  (SSYK 2012)`)){
  temp &amp;lt;- filter(tbnum, `occuptional  (SSYK 2012)` == i)
  if (dim(temp)[1] &amp;gt; 90){
    model &amp;lt;- lm(log(salary) ~ edulevel + sex + year_n + sector, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;none&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;none&amp;quot;))  
  
    model &amp;lt;- lm(log(salary) ~ edulevel * sector + sex + year_n, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;sector and edulevel&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;sector and edulevel&amp;quot;))  
    
    model &amp;lt;- lm(log(salary) ~ edulevel + sector * sex + year_n, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;sector and sex&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;sector and sex&amp;quot;))  
    
    model &amp;lt;- lm(log(salary) ~ edulevel +  year_n * sector + sex, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;sector and year&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;sector and year&amp;quot;))  
    
    model &amp;lt;- lm(log(salary) ~ edulevel * sector * sex * year_n, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;sector, year, edulevel and sex&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;sector, year, edulevel and sex&amp;quot;))      
  }
}&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova_table &amp;lt;- anova_table %&amp;gt;% rowwise() %&amp;gt;% mutate(contcol = str_count(term, &amp;quot;:&amp;quot;)) 

summary_table &amp;lt;- summary_table %&amp;gt;% rowwise() %&amp;gt;% mutate(contcol = str_count(term, &amp;quot;:&amp;quot;))

merge(summary_table, anova_table, by = c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (term.y == &amp;quot;sector&amp;quot;) %&amp;gt;%    
  filter (interaction == &amp;quot;none&amp;quot;) %&amp;gt;%
  
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  ggplot () +
    geom_point (mapping = aes(x = estimate, y = statistic.y, colour = interaction)) +
    labs(
      x = &amp;quot;Increase in salaries (% / year)&amp;quot;,
      y = &amp;quot;F-value for sector&amp;quot;
    )   &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-2&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-29-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3_files/figure-html/unnamed-chunk-2-1.png&#34; alt=&#34;The significance of the sector on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: The significance of the sector on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, by = c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%    
  # only look at the interactions between all four variables in the case with interaction sector, year, edulevel and sex
  filter (!(contcol.y &amp;lt; 3 &amp;amp; interaction == &amp;quot;sector, year, edulevel and sex&amp;quot;)) %&amp;gt;% 
  
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  ggplot () +
    geom_point (mapping = aes(x = estimate, y = statistic.y, colour = interaction)) +
    labs(
      x = &amp;quot;Increase in salaries (% / year)&amp;quot;,
      y = &amp;quot;F-value for interaction&amp;quot;
    ) &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-3&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-29-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3_files/figure-html/unnamed-chunk-3-1.png&#34; alt=&#34;The significance of the interaction between sector, edulevel, year and sex on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: The significance of the interaction between sector, edulevel, year and sex on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;The tables with all occupational groups sorted by F-value in descending order.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (term.y == &amp;quot;sector&amp;quot;) %&amp;gt;%   
  filter (interaction == &amp;quot;none&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sector) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-4&#34;&gt;Table 2: &lt;/span&gt;Correlation for F-value (sector) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.609869&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;515.5748558&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.250895&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;467.4732796&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.217446&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;465.2253589&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.964825&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;340.2901702&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.971413&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;336.7676606&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;334 Administrative and specialized secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.410127&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;333.7196510&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.474549&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;305.6052807&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.534461&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;251.4058600&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.586686&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;250.8147705&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;515 Building caretakers and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.522386&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;250.0742967&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.493038&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;230.0064060&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;213 Biologists, pharmacologists and specialists in agriculture and forestry&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.303600&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;228.0668837&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;134 Architectural and engineering managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.161068&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;226.5669850&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.001597&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;222.9774594&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.227235&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;214.6750980&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.481519&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;179.3099186&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.046538&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;164.8394018&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;129 Administration and service managers not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.059900&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;158.7687951&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;342 Athletes, fitness instructors and recreational workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.586943&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;132.1816646&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.541205&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;69.9268014&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.849200&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;50.0164438&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.460130&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;41.9287342&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.415591&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;40.1919620&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.938366&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;35.3850213&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.157379&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;22.0488822&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.959595&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;21.6985964&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.637486&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;19.1041252&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;131 Information and communications technology service managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.000609&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;17.0841502&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.325958&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;16.5471030&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.626260&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.6152029&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.231854&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;13.9155189&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;723 Machinery mechanics and fitters&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.362984&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12.5847785&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.906578&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.3336230&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.483280&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.4612144&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;732 Printing trades workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.158854&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.2405535&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.985653&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.6801860&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.527801&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7881181&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.881615&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8334164&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;611 Market gardeners and crop growers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.980288&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3732826&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.357787&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0276157&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.981512&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0046670&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%   
  filter (interaction == &amp;quot;sector and sex&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sector and sex) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-5&#34;&gt;Table 3: &lt;/span&gt;Correlation for F-value (sector and sex) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.966955&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;183.3539258&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.988628&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;84.3723061&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;342 Athletes, fitness instructors and recreational workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.609407&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;53.2856268&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.474549&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;53.1541368&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.549161&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;39.5233707&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.952973&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;32.5926396&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;611 Market gardeners and crop growers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.936338&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;25.7248443&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.489860&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;24.3260135&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.157379&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;19.0714901&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;732 Printing trades workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.207617&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;16.8065594&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.497408&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.7408059&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.511558&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.1529257&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.819995&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;14.2436097&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.899482&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;13.1974037&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;334 Administrative and specialized secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.416957&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12.8317750&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;213 Biologists, pharmacologists and specialists in agriculture and forestry&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.317893&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10.2339741&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;134 Architectural and engineering managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.161068&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.7816667&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.493038&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.6670096&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.989465&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.6486138&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.586686&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.4427211&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.594999&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.1271264&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;723 Machinery mechanics and fitters&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.337983&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.4299201&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.627736&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.7400150&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.316138&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.3473607&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.999161&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.0012138&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;129 Administration and service managers not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.121066&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.6687219&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.250895&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.7631281&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.959595&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.5292601&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;131 Information and communications technology service managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.029303&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5233240&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.033203&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5032667&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.357787&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2988889&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.217446&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1823519&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.519631&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1300830&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.231854&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5040767&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.457007&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3945913&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.629057&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3225970&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.971413&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3480210&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.879581&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1432868&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;515 Building caretakers and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.522844&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1379141&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.424488&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0670314&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.227235&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0001653&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%   
  filter (interaction == &amp;quot;sector and edulevel&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sector and edulevel) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-6&#34;&gt;Table 4: &lt;/span&gt;Correlation for F-value (sector and edulevel) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.586686&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;48.2902588&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.936162&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;32.3560802&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.636843&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;29.4462376&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.420632&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;26.7105578&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.231854&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;24.9194979&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;134 Architectural and engineering managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.161068&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.3665858&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.493038&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;18.1556092&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;723 Machinery mechanics and fitters&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.358171&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;17.3272819&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.330300&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12.9686992&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.809019&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11.7436022&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;732 Printing trades workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.220728&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11.0453452&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.647068&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10.5100504&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.396076&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.6264575&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;213 Biologists, pharmacologists and specialists in agriculture and forestry&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.264110&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.7952190&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.981512&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.5766373&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.980338&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.9758948&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.919933&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.6231457&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.959595&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.7464596&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.971413&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.4435379&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;131 Information and communications technology service managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.908111&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.9661376&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.565523&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.7197836&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;129 Administration and service managers not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.160995&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.3062655&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.209131&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.5539841&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.435903&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4242806&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.955970&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3635706&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.473064&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2639790&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.043677&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0449469&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;334 Administrative and specialized secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.387467&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8528940&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.527801&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3007696&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.612900&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9599904&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.474549&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5903279&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.250895&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5586112&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.357787&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3263497&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;611 Market gardeners and crop growers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.016345&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2719035&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.460130&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0672924&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.227235&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0114046&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;515 Building caretakers and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.526100&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8254389&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;342 Athletes, fitness instructors and recreational workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.540952&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8230839&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.897863&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7969406&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.157379&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5425248&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.938366&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0965584&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and edulevel&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%   
  filter (interaction == &amp;quot;sector and year&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sector and year) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-7&#34;&gt;Table 5: &lt;/span&gt;Correlation for F-value (sector and year) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;129 Administration and service managers not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.8528187&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;17.1667457&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2455362&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;16.6101284&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;334 Administrative and specialized secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0672775&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;14.9508269&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2769477&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12.4036331&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2733483&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11.6812523&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4907346&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11.5673142&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9905121&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10.5945994&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4510286&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.5936100&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3355826&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.7816291&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5332567&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.4196762&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1828057&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.5660180&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;732 Printing trades workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8825380&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.3716553&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;213 Biologists, pharmacologists and specialists in agriculture and forestry&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8099783&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.6786224&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;611 Market gardeners and crop growers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3161238&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3017939&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;131 Information and communications technology service managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3504930&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8750373&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7411030&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8290655&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8047571&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7841902&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8608741&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6173373&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9920113&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2486864&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0209963&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0446973&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;723 Machinery mechanics and fitters&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6258864&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4272778&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;515 Building caretakers and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3423357&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3492650&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1376334&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2494762&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1906312&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1458297&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1522849&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8075167&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4217447&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7799156&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2625663&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7751592&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3018747&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6646888&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;134 Architectural and engineering managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3811821&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5852232&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2520012&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5424390&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3986233&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3139375&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.0945884&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2682143&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0082873&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2021948&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3994292&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0754320&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;342 Athletes, fitness instructors and recreational workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6673896&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0633281&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4249631&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0494622&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2225873&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0378303&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0557505&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0377336&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2536138&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0294035&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6015664&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0125275&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5487758&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0013436&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 1) %&amp;gt;%   
  filter (interaction == &amp;quot;sector, year, edulevel and sex&amp;quot;) %&amp;gt;%
  filter (!(contcol.y &amp;lt; 3 &amp;amp; interaction == &amp;quot;sector, year, edulevel and sex&amp;quot;)) %&amp;gt;%  
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sector, year, edulevel and sex) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-8&#34;&gt;Table 6: &lt;/span&gt;Correlation for F-value (sector, year, edulevel and sex) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0717871&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.0646298&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-1.9358596&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3593399&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1339049&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5206357&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;134 Architectural and engineering managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2221716&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4150753&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2989757&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2892768&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;342 Athletes, fitness instructors and recreational workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7799167&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1976399&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.2732904&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9988132&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;723 Machinery mechanics and fitters&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1334983&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8843643&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2883737&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8215339&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6268377&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8184489&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3176280&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6357939&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1875630&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6319874&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;129 Administration and service managers not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;16.0932403&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5716145&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2335677&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4882138&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9377802&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4494844&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6286211&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4408203&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4806649&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4162230&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0809717&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3439893&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7217534&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3344044&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.5515134&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9604905&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6860436&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9155189&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1372549&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9113280&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;213 Biologists, pharmacologists and specialists in agriculture and forestry&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0956711&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9044780&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.6231100&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8611877&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;515 Building caretakers and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.8284291&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8343329&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;334 Administrative and specialized secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-1.8021942&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7940149&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9556278&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7580341&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;131 Information and communications technology service managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.2536436&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7429188&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.7939038&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7338409&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2312302&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7188959&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;732 Printing trades workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.9993823&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6905319&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2164674&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6326293&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;611 Market gardeners and crop growers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2753348&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6157880&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0666620&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5266982&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7940568&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4253642&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.0470456&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3217115&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9031256&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2684425&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6741717&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2603997&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8143344&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1540308&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.5231019&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0911334&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6927719&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0899580&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, edulevel and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Let’s check what we have found.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tbnum %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;242 Organisation analysts, policy administrators and human resource specialists&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n + eduyears + sector + sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;eduyears&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-9&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-29-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3_files/figure-html/unnamed-chunk-9-1.png&#34; alt=&#34;Highest F-value sector, Organisation analysts, policy administrators and human resource specialists&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: Highest F-value sector, Organisation analysts, policy administrators and human resource specialists
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tbnum %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;941 Fast-food workers, food preparation assistants&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n + eduyears + sector + sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;eduyears&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-10&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-29-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3_files/figure-html/unnamed-chunk-10-1.png&#34; alt=&#34;Lowest F-value sector, Fast-food workers, food preparation assistants&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: Lowest F-value sector, Fast-food workers, food preparation assistants
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tbnum %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;911 Cleaners and helpers&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n + eduyears + sector * sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;eduyears&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-11&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-29-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3_files/figure-html/unnamed-chunk-11-1.png&#34; alt=&#34;Highest F-value interaction sector and gender, Cleaners and helpers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: Highest F-value interaction sector and gender, Cleaners and helpers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tbnum %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;411 Office assistants and other secretaries&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n + eduyears + sector * sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;eduyears&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-12&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-29-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3_files/figure-html/unnamed-chunk-12-1.png&#34; alt=&#34;Lowest F-value interaction sector and gender, Office assistants and other secretaries&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: Lowest F-value interaction sector and gender, Office assistants and other secretaries
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tbnum %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;335 Tax and related government associate professionals&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n + eduyears * sector + sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;eduyears&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in predict.lm(model, newdata = fitfram, type = &amp;quot;response&amp;quot;, se.fit =
## se, : prediction from a rank-deficient fit may be misleading&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-13&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-29-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3_files/figure-html/unnamed-chunk-13-1.png&#34; alt=&#34;Highest F-value interaction sector and edulevel, Tax and related government associate professionals&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: Highest F-value interaction sector and edulevel, Tax and related government associate professionals
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tbnum %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;911 Cleaners and helpers&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n + eduyears * sector + sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;eduyears&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in predict.lm(model, newdata = fitfram, type = &amp;quot;response&amp;quot;, se.fit =
## se, : prediction from a rank-deficient fit may be misleading&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-14&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-29-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3_files/figure-html/unnamed-chunk-14-1.png&#34; alt=&#34;Lowest F-value interaction sector and edulevel, Cleaners and helpers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: Lowest F-value interaction sector and edulevel, Cleaners and helpers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tbnum %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;129 Administration and service managers not elsewhere classified&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n * sector + eduyears + sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;eduyears&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-15&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-29-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3_files/figure-html/unnamed-chunk-15-1.png&#34; alt=&#34;Highest F-value interaction sector and year, Administration and service managers not elsewhere classified&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: Highest F-value interaction sector and year, Administration and service managers not elsewhere classified
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tbnum %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;159 Other social services managers&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n * sector + eduyears + sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;eduyears&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-16&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-29-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3_files/figure-html/unnamed-chunk-16-1.png&#34; alt=&#34;Lowest F-value interaction sector and year, Other social services managers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 10: Lowest F-value interaction sector and year, Other social services managers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tbnum %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;264 Authors, journalists and linguists&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n * eduyears * sector * sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;eduyears&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in predict.lm(model, newdata = fitfram, type = &amp;quot;response&amp;quot;, se.fit =
## se, : prediction from a rank-deficient fit may be misleading&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-17&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-29-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3_files/figure-html/unnamed-chunk-17-1.png&#34; alt=&#34;Highest F-value interaction sector, edulevel, year and gender, Authors, journalists and linguists&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 11: Highest F-value interaction sector, edulevel, year and gender, Authors, journalists and linguists
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 1) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (2-2,1-1) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tbnum %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;534 Attendants, personal assistants and related workers&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n * eduyears * sector * sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;eduyears&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning in predict.lm(model, newdata = fitfram, type = &amp;quot;response&amp;quot;, se.fit =
## se, : prediction from a rank-deficient fit may be misleading&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-18&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-29-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-3_files/figure-html/unnamed-chunk-18-1.png&#34; alt=&#34;Lowest F-value interaction sector, edulevel, year and gender, Attendants, personal assistants and related workers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 12: Lowest F-value interaction sector, edulevel, year and gender, Attendants, personal assistants and related workers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 1) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (2-2,1-1) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
</description>
    </item>
    
    <item>
      <title>The significance of the sector on the salary in Sweden, a comparison between different occupational groups, part 2</title>
      <link>http://mikaellundqvist.rbind.io/2020/02/23/the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2/</link>
      <pubDate>Sun, 23 Feb 2020 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2020/02/23/the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2/</guid>
      <description>


&lt;p&gt;In my last post, I examined the significance of the sector on the salary for different occupational groups using statistics from different regions. In previous posts I have shown a correlation between the salary and experience and also salary and education, In this post, I will examine the correlation between salary and sector using statistics for age.&lt;/p&gt;
&lt;p&gt;The F-value from the Anova table is used as the single value to discriminate how much the region and salary correlates. For exploratory analysis, the Anova value seems good enough.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages --------------------------------------------------- tidyverse 1.3.0 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.2.1     v purrr   0.3.3
## v tibble  2.1.3     v dplyr   0.8.3
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.4.0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ------------------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (broom)
library (car)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (sjPlot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Registered S3 methods overwritten by &amp;#39;lme4&amp;#39;:
##   method                          from
##   cooks.distance.influence.merMod car 
##   influence.merMod                car 
##   dfbeta.influence.merMod         car 
##   dfbetas.influence.merMod        car&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;readfile &amp;lt;- function (file1){read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%
  gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = salary) %&amp;gt;%
  drop_na() %&amp;gt;%
  mutate (year_n = parse_number (year))
}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data table is downloaded from Statistics Sweden. It is saved as a comma-delimited file without heading, 000000D2.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I have renamed the file to 000000D2_sector.csv because the filename 000000D2.csv was used in a previous post.&lt;/p&gt;
&lt;p&gt;The table: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by sector, occupational group (SSYK 2012), sex and age. Year 2014 - 2018 Monthly salary 1-3 public sector 4-5 private sector&lt;/p&gt;
&lt;p&gt;In the plot and tables, you can also find information on how the increase in salaries per year for each occupational group is affected when the interactions are taken into account.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb &amp;lt;- readfile(&amp;quot;000000D2_sector.csv&amp;quot;) %&amp;gt;%
  rowwise() %&amp;gt;%
  mutate(age_l = unlist(lapply(strsplit(substr(age, 1, 5), &amp;quot;-&amp;quot;), strtoi))[1]) %&amp;gt;%
  rowwise() %&amp;gt;%
  mutate(age_h = unlist(lapply(strsplit(substr(age, 1, 5), &amp;quot;-&amp;quot;), strtoi))[2]) %&amp;gt;%
  mutate(age_n = (age_l + age_h) / 2)

summary_table = 0
anova_table = 0

for (i in unique(tb$`occuptional  (SSYK 2012)`)){
  temp &amp;lt;- filter(tb, `occuptional  (SSYK 2012)` == i)
  if (dim(temp)[1] &amp;gt; 90){
    model &amp;lt;- lm(log(salary) ~ poly(age_n, 3) + sex + year_n + sector, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;none&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;none&amp;quot;))  
  
    model &amp;lt;- lm(log(salary) ~ poly(age_n, 3) * sector + sex + year_n, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;sector and age&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;sector and age&amp;quot;))  
    
    model &amp;lt;- lm(log(salary) ~ poly(age_n, 3) + sector * sex + year_n, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;sector and sex&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;sector and sex&amp;quot;))  
    
    model &amp;lt;- lm(log(salary) ~ poly(age_n, 3) +  year_n * sector + sex, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;sector and year&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;sector and year&amp;quot;))  
    
    model &amp;lt;- lm(log(salary) ~ poly(age_n, 3) * sector * sex * year_n, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;sector, year, age and sex&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;sector, year, age and sex&amp;quot;))      
  }
}&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova_table &amp;lt;- anova_table %&amp;gt;% rowwise() %&amp;gt;% mutate(contcol = str_count(term, &amp;quot;:&amp;quot;)) 

summary_table &amp;lt;- summary_table %&amp;gt;% rowwise() %&amp;gt;% mutate(contcol = str_count(term, &amp;quot;:&amp;quot;))

merge(summary_table, anova_table, by = c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (term.y == &amp;quot;sector&amp;quot;) %&amp;gt;%    
  filter (interaction == &amp;quot;none&amp;quot;) %&amp;gt;%
  
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  ggplot () +
    geom_point (mapping = aes(x = estimate, y = statistic.y, colour = interaction)) +
    labs(
      x = &amp;quot;Increase in salaries (% / year)&amp;quot;,
      y = &amp;quot;F-value for sector&amp;quot;
    )   &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-2&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-23-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2_files/figure-html/unnamed-chunk-2-1.png&#34; alt=&#34;The significance of the sector on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: The significance of the sector on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, by = c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%    
  # only look at the interactions between all four variables in the case with interaction sector, year, age and sex
  filter (!(contcol.y &amp;lt; 3 &amp;amp; interaction == &amp;quot;sector, year, age and sex&amp;quot;)) %&amp;gt;% 
  
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  ggplot () +
    geom_point (mapping = aes(x = estimate, y = statistic.y, colour = interaction)) +
    labs(
      x = &amp;quot;Increase in salaries (% / year)&amp;quot;,
      y = &amp;quot;F-value for interaction&amp;quot;
    ) &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-3&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-23-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2_files/figure-html/unnamed-chunk-3-1.png&#34; alt=&#34;The significance of the interaction between sector, age, year and sex on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: The significance of the interaction between sector, age, year and sex on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;The tables with all occupational groups sorted by F-value in descending order.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (term.y == &amp;quot;sector&amp;quot;) %&amp;gt;%   
  filter (interaction == &amp;quot;none&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sector) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-4&#34;&gt;Table 1: &lt;/span&gt;Correlation for F-value (sector) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3966875&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;456.4704739&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6130221&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;304.1919940&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3419860&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;285.0349753&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.6578230&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;280.4433905&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;515 Building caretakers and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2146338&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;270.0075297&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5350438&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;268.3445857&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0523696&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;259.5458010&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3512692&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;241.0997355&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5801263&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;237.2341857&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3936321&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;218.8431989&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;334 Administrative and specialized secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0432078&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;197.0091850&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7547524&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;188.6715597&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4477931&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;179.6275210&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;342 Athletes, fitness instructors and recreational workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8086152&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;178.9426205&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9900356&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;178.5334093&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;213 Biologists, pharmacologists and specialists in agriculture and forestry&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8912397&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;161.3670379&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;265 Creative and performing artists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0992262&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;156.9400225&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4619072&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;134.7081954&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7045039&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;117.0092304&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1803329&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;111.0703889&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2865429&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;93.9690111&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;211 Physicists and chemists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0010438&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;65.4196943&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9306757&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;64.9465316&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3987358&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;58.9926983&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2500326&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;54.4430468&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;815 Machine operators, textile, fur and leather products&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3517419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;48.6411876&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;723 Machinery mechanics and fitters&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4251751&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;48.2416487&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0390165&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;38.5627689&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4686744&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;37.8718779&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;228 Specialists in health care not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1589844&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;36.5601628&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9960527&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;18.6514673&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;216 Architects and surveyors&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8323556&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.8227312&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6582824&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;14.3745577&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0076073&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12.2147525&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7704145&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12.1641422&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4774983&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.3900661&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;511 Cabin crew, guides and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3443427&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.9533625&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0233419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.1208491&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2271720&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.8058895&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2044676&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.2832833&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9105637&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.0479235&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7995742&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1850611&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5651458&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1164875&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9337354&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7577500&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;611 Market gardeners and crop growers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8041743&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0643998&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7942944&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0197082&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%   
  filter (interaction == &amp;quot;sector and sex&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sector and sex) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-5&#34;&gt;Table 2: &lt;/span&gt;Correlation for F-value (sector and sex) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9306757&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;109.1411280&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4477931&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;70.7824355&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;815 Machine operators, textile, fur and leather products&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3563289&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;31.8117555&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2899853&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;30.4752880&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2023600&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;25.9296892&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;342 Athletes, fitness instructors and recreational workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8086152&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;25.0203935&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4786358&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;24.2528951&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2453619&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;21.8740576&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2271720&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;21.5539071&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7263442&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;19.6730093&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2044676&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;19.3664844&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;611 Market gardeners and crop growers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7542849&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.6290927&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0076073&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12.5499477&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;213 Biologists, pharmacologists and specialists in agriculture and forestry&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8973847&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11.5413223&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5636636&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.5201918&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0388525&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.8030347&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7045039&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.5568275&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;211 Physicists and chemists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9926264&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.5217104&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6228416&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.7033533&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7942944&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.4926902&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9960527&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.8523689&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9247904&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3361868&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3902920&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2726896&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4049429&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1968905&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.6527974&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8848508&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;265 Creative and performing artists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0908231&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4335097&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9900356&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3091055&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0478812&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6616950&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;228 Specialists in health care not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2271410&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4295653&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5350438&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1646979&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2500326&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1488532&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0233419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1344410&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6014900&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1208624&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9034289&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0441681&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3419860&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8053533&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7938330&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7610648&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5666541&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6898733&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4707255&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4188795&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3512692&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2019761&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4774983&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1910697&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;334 Administrative and specialized secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0473936&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1673844&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;723 Machinery mechanics and fitters&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4270025&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0946975&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;216 Architects and surveyors&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8323370&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0480519&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;515 Building caretakers and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2148711&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0466927&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7695781&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0317138&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;511 Cabin crew, guides and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3452668&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0263848&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%   
  filter (interaction == &amp;quot;sector and age&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sector and age) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-6&#34;&gt;Table 3: &lt;/span&gt;Correlation for F-value (sector and age) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3512692&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;81.293931&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0233419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;74.994233&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4774983&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;50.554556&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;511 Cabin crew, guides and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3214703&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;49.726047&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1760115&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;43.716282&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9372268&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;41.355837&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7045039&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;37.992660&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4925081&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;31.914364&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0984548&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;31.372391&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4763530&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;24.396462&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;342 Athletes, fitness instructors and recreational workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8086152&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;21.878170&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2044676&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.887588&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5711782&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.728956&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6542145&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;19.114710&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1089611&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;18.460571&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2500326&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;18.166197&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8298739&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;16.372110&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5000216&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.799814&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3419860&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.436701&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8467331&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.280487&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;211 Physicists and chemists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9949354&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11.545117&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;213 Biologists, pharmacologists and specialists in agriculture and forestry&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8835767&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11.142152&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;228 Specialists in health care not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0243679&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10.920972&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4477931&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10.914843&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9960527&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10.718505&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5816295&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.475763&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;216 Architects and surveyors&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7872555&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.229637&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5872747&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.122166&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9306757&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.084293&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;815 Machine operators, textile, fur and leather products&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3751133&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.636766&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;334 Administrative and specialized secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1355883&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.153296&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4620357&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.994422&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9900356&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.838603&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9226126&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.070516&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;515 Building caretakers and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2192760&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.005165&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7875316&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.421210&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;723 Machinery mechanics and fitters&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4360682&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.406378&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5350438&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.043236&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2247505&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.044872&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7942944&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.928362&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2271720&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.673529&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;265 Creative and performing artists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0786906&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.538964&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7863137&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.497814&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0076073&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.339712&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.6262827&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.287950&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;611 Market gardeners and crop growers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8042107&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.716068&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and age&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%   
  filter (interaction == &amp;quot;sector and year&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sector and year) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-7&#34;&gt;Table 4: &lt;/span&gt;Correlation for F-value (sector and year) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2821623&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;52.9080079&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7102815&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;24.3392922&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;334 Administrative and specialized secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6824704&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.9484068&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3704462&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;13.8844930&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2226939&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12.4412439&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5465829&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10.9472608&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3719311&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10.1007673&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7590988&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.0616925&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;611 Market gardeners and crop growers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4285881&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.0355793&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4681159&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.2187247&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2488108&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.2777560&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4272576&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.8822064&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4475215&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.3685520&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;723 Machinery mechanics and fitters&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7726800&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.0300820&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;511 Cabin crew, guides and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-1.4636615&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.9854827&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4174309&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.9092911&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2975181&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.6534643&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0202998&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4258034&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;216 Architects and surveyors&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2766321&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0286083&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4761796&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1189296&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7564149&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9590690&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1080113&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3375758&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;265 Creative and performing artists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8252102&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3073089&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7179780&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1525106&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4698420&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8846941&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;515 Building caretakers and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0896486&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8721029&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1070969&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8453000&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3074810&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7627131&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;213 Biologists, pharmacologists and specialists in agriculture and forestry&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1515840&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7217108&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;815 Machine operators, textile, fur and leather products&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5169216&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7021796&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6770984&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6948266&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4961111&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6866667&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9024857&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6474976&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;342 Athletes, fitness instructors and recreational workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0356952&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5210552&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1319348&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4764820&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1030085&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4107102&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1837720&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3653365&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2476351&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3329319&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;228 Specialists in health care not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0215985&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1994037&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4986510&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1694097&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.5227087&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0566620&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;211 Physicists and chemists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0509288&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0256116&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5525388&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0089722&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9579284&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0058151&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1471390&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0023497&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3896946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0012880&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 1) %&amp;gt;%   
  filter (interaction == &amp;quot;sector, year, age and sex&amp;quot;) %&amp;gt;%
  filter (!(contcol.y &amp;lt; 3 &amp;amp; interaction == &amp;quot;sector, year, age and sex&amp;quot;)) %&amp;gt;%  
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sector, year, age and sex) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-8&#34;&gt;Table 5: &lt;/span&gt;Correlation for F-value (sector, year, age and sex) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4648855&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11.6391393&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;342 Athletes, fitness instructors and recreational workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0991670&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.9098726&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;216 Architects and surveyors&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2301466&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.6322806&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;228 Specialists in health care not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5176747&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.1043437&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2641978&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.9184148&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4573789&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.6168903&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7581752&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2902539&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4011513&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0277439&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0292874&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6128635&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6319084&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6004044&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.5273156&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2615012&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4662860&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9867325&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9900178&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9221016&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5222219&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9206611&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6603985&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8150814&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;213 Biologists, pharmacologists and specialists in agriculture and forestry&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3962841&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7496638&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1197350&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5815397&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;511 Cabin crew, guides and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.6957497&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5410098&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;211 Physicists and chemists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3310509&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5257771&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9306066&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5169994&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;819 Process control technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5394398&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4148181&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;723 Machinery mechanics and fitters&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9145883&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2913243&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.5373214&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2588294&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0561764&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1641262&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3141175&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1593790&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;515 Building caretakers and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3554368&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0916712&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;334 Administrative and specialized secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.4841162&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8627072&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.8766371&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8178463&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1959143&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8087407&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4624435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6787061&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;815 Machine operators, textile, fur and leather products&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2558500&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6507638&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1412580&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6425880&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4063713&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5077368&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1618484&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5005162&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3819183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4079113&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;265 Creative and performing artists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7171084&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4046591&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9650332&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3867492&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0661705&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3303477&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;611 Market gardeners and crop growers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1758845&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1794678&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3472478&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1238188&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2161856&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1214610&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1371036&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1080593&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3576411&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0748416&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6448524&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0675532&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5212252&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0231719&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1626640&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0083390&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector, year, age and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Let’s check what we have found.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;218 Specialists within environmental and health protection&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n + poly(age_n, 3) + sector + sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-9&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-23-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2_files/figure-html/unnamed-chunk-9-1.png&#34; alt=&#34;Highest F-value sector, Specialists within environmental and health protection&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: Highest F-value sector, Specialists within environmental and health protection
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;512 Cooks and cold-buffet managers&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n + poly(age_n, 3) + sector + sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-10&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-23-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2_files/figure-html/unnamed-chunk-10-1.png&#34; alt=&#34;Lowest F-value sector, Cooks and cold-buffet managers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: Lowest F-value sector, Cooks and cold-buffet managers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;911 Cleaners and helpers&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n + poly(age_n, 3) + sector * sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-11&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-23-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2_files/figure-html/unnamed-chunk-11-1.png&#34; alt=&#34;Highest F-value interaction sector and gender, Cleaners and helpers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: Highest F-value interaction sector and gender, Cleaners and helpers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;511 Cabin crew, guides and related workers&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n + poly(age_n, 3) + sector * sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-12&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-23-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2_files/figure-html/unnamed-chunk-12-1.png&#34; alt=&#34;Lowest F-value interaction sector and gender, Cabin crew, guides and related workers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: Lowest F-value interaction sector and gender, Cabin crew, guides and related workers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;251 ICT architects, systems analysts and test managers&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n + poly(age_n, 3) * sector + sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-13&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-23-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2_files/figure-html/unnamed-chunk-13-1.png&#34; alt=&#34;Highest F-value interaction sector and age, ICT architects, systems analysts and test managers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: Highest F-value interaction sector and age, ICT architects, systems analysts and test managers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;611 Market gardeners and crop growers&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n + poly(age_n, 3) * sector + sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-14&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-23-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2_files/figure-html/unnamed-chunk-14-1.png&#34; alt=&#34;Lowest F-value interaction sector and age, Market gardeners and crop growers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: Lowest F-value interaction sector and age, Market gardeners and crop growers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;222 Nursing professionals&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n * sector + poly(age_n, 3) + sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-15&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-23-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2_files/figure-html/unnamed-chunk-15-1.png&#34; alt=&#34;Highest F-value interaction sector and year, Nursing professionals&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: Highest F-value interaction sector and year, Nursing professionals
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;218 Specialists within environmental and health protection&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n * sector + poly(age_n, 3) + sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-16&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-23-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2_files/figure-html/unnamed-chunk-16-1.png&#34; alt=&#34;Lowest F-value interaction sector and year, Specialists within environmental and health protection&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 10: Lowest F-value interaction sector and year, Specialists within environmental and health protection
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;214 Engineering professionals&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n * poly(age_n, 3) * sector * sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-17&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-23-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2_files/figure-html/unnamed-chunk-17-1.png&#34; alt=&#34;Highest F-value interaction sector, age, year and gender, Engineering professionals&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 11: Highest F-value interaction sector, age, year and gender, Engineering professionals
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 1) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (2-2,1-1) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;243 Marketing and public relations professionals&amp;quot;)
 
model &amp;lt;- lm (log(salary) ~ year_n * poly(age_n, 3) * sector * sex, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;age_n&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-18&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-23-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups-part-2_files/figure-html/unnamed-chunk-18-1.png&#34; alt=&#34;Lowest F-value interaction sector, age, year and gender, Marketing and public relations professionals&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 12: Lowest F-value interaction sector, age, year and gender, Marketing and public relations professionals
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## TableGrob (2 x 1) &amp;quot;arrange&amp;quot;: 2 grobs
##   z     cells    name           grob
## 1 1 (1-1,1-1) arrange gtable[layout]
## 2 2 (2-2,1-1) arrange gtable[layout]&lt;/code&gt;&lt;/pre&gt;
</description>
    </item>
    
    <item>
      <title>The significance of the sector on the salary in Sweden, a comparison between different occupational groups</title>
      <link>http://mikaellundqvist.rbind.io/2020/02/19/the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups/</link>
      <pubDate>Wed, 19 Feb 2020 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2020/02/19/the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups/</guid>
      <description>


&lt;p&gt;In my last post, I found that the sector has a significant impact on the salary of engineers. Is the significance of the sector unique to engineers or are there similar correlations in other occupational groups?&lt;/p&gt;
&lt;p&gt;Statistics Sweden use NUTS (Nomenclature des Unités Territoriales Statistiques), which is the EU’s hierarchical regional division, to specify the regions.&lt;/p&gt;
&lt;p&gt;The F-value from the Anova table is used as the single value to discriminate how much the region and salary correlates. For exploratory analysis, the Anova value seems good enough.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse) &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages ------------------------------------- tidyverse 1.3.0 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.2.1     v purrr   0.3.3
## v tibble  2.1.3     v dplyr   0.8.3
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.4.0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ---------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (broom) 
library (car)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (swemaps) # devtools::install_github(&amp;#39;reinholdsson/swemaps&amp;#39;)
library(sjPlot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Registered S3 methods overwritten by &amp;#39;lme4&amp;#39;:
##   method                          from
##   cooks.distance.influence.merMod car 
##   influence.merMod                car 
##   dfbeta.influence.merMod         car 
##   dfbetas.influence.merMod        car&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## #refugeeswelcome&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;readfile &amp;lt;- function (file1){  
  read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%  
    gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = salary) %&amp;gt;%  
    drop_na() %&amp;gt;%  
    mutate (year_n = parse_number (year))
}
nuts &amp;lt;-read_csv (&amp;quot;nuts.csv&amp;quot;, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%
  mutate(NUTS2_sh = substr(NUTS2, 1, 4))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Missing column names filled in: &amp;#39;X1&amp;#39; [1]&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;nuts %&amp;gt;% 
  distinct (NUTS2_en) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Nomenclature des Unités Territoriales Statistiques (NUTS)&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-1&#34;&gt;Table 1: &lt;/span&gt;Nomenclature des Unités Territoriales Statistiques (NUTS)&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;NUTS2_en&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE11 Stockholm&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE12 East-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE21 Småland and islands&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE22 South Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE23 West Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE31 North-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE32 Central Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE33 Upper Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;map_ln_n &amp;lt;- map_ln %&amp;gt;%
  mutate(lnkod_n = as.numeric(lnkod)) &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data table is downloaded from Statistics Sweden. It is saved as a comma-delimited file without heading, 000000CG.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I have renamed the file to 000000CG_sector.csv because the filename 000000CG.csv was used in a previous post.&lt;/p&gt;
&lt;p&gt;The table: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2018 Monthly salary 1-3 public sector 4-5 private sector&lt;/p&gt;
&lt;p&gt;Only 17 occupational groups have employees in both the public and the private sector in all regions and both genders.&lt;/p&gt;
&lt;p&gt;In the plot and tables, you can also find information on how the increase in salaries per year for each occupational group is affected when the interactions are taken into account.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb &amp;lt;- readfile (&amp;quot;000000CG_sector.csv&amp;quot;) %&amp;gt;%
  left_join(nuts %&amp;gt;% distinct (NUTS2_en, NUTS2_sh), by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) 
  
tb_map &amp;lt;- readfile (&amp;quot;000000CG_sector.csv&amp;quot;) %&amp;gt;%
  left_join(nuts, by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) %&amp;gt;%  
  right_join(map_ln_n, by = c(&amp;quot;Länskod&amp;quot; = &amp;quot;lnkod_n&amp;quot;))


summary_table = vector()
anova_table = vector()
for (i in unique(tb$`occuptional  (SSYK 2012)`)){
  temp &amp;lt;- filter(tb, `occuptional  (SSYK 2012)` == i)
  if (dim(temp)[1] &amp;gt; 150){
    model &amp;lt;- lm(log(salary) ~ region + sex + year_n + sector, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;none&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;none&amp;quot;))  
  
    model &amp;lt;- lm(log(salary) ~ region + sex + year_n * sector, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;sector and year&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;sector and year&amp;quot;))
    
    model &amp;lt;- lm(log(salary) ~ region + year_n + sex * sector, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;sex and sector&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;sex and sector&amp;quot;))   
    
    model &amp;lt;- lm(log(salary) ~ region * sector + year_n + sex, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;region and sector&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;region and sector&amp;quot;))
    
    model &amp;lt;- lm(log(salary) ~ region * sector * year_n * sex, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;region, sector, year and sex&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;region, sector, year and sex&amp;quot;))    
  }
}&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Note: model has aliased coefficients
##       sums of squares computed by model comparison&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova_table &amp;lt;- anova_table %&amp;gt;% rowwise() %&amp;gt;% mutate(contcol = str_count(term, &amp;quot;:&amp;quot;)) 

summary_table &amp;lt;- summary_table %&amp;gt;% rowwise() %&amp;gt;% mutate(contcol = str_count(term, &amp;quot;:&amp;quot;))

merge(summary_table, anova_table, by = c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (term.y == &amp;quot;sector&amp;quot;) %&amp;gt;%    
  filter (interaction == &amp;quot;none&amp;quot;) %&amp;gt;%
  
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  ggplot () +
    geom_point (mapping = aes(x = estimate, y = statistic.y, colour = interaction)) +
    labs(
      x = &amp;quot;Increase in salaries (% / year)&amp;quot;,
      y = &amp;quot;F-value for sector&amp;quot;
    )   &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-2&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-2-1.png&#34; alt=&#34;The significance of the sector on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: The significance of the sector on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, by = c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%    
  # only look at the interactions between all four variables in the case with interaction region, sector, year and sex
  filter (!(contcol.y &amp;lt; 3 &amp;amp; interaction == &amp;quot;region, sector, year and sex&amp;quot;)) %&amp;gt;% 
  
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  ggplot () +
    geom_point (mapping = aes(x = estimate, y = statistic.y, colour = interaction)) +
    labs(
      x = &amp;quot;Increase in salaries (% / year)&amp;quot;,
      y = &amp;quot;F-value for interaction&amp;quot;
    )   &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-3&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-3-1.png&#34; alt=&#34;The significance of the interaction between sector, region, year and sex on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: The significance of the interaction between sector, region, year and sex on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;The tables with all occupational groups sorted by F-value in descending order.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (term.y == &amp;quot;sector&amp;quot;) %&amp;gt;%   
  filter (interaction == &amp;quot;none&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sector) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-4&#34;&gt;Table 2: &lt;/span&gt;Correlation for F-value (sector) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.109153&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;606.2792907&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.994107&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;429.7668310&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.237594&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;350.7420490&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.316554&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;337.4390522&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.142349&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;325.6103179&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.609024&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;160.8870308&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.064925&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;160.8111547&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.310435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;121.7693426&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.575584&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;87.3548855&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.391839&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;67.5617978&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.541572&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;62.6562426&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.850523&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;40.6132964&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.087753&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;28.9529104&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.743468&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;23.7179785&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.549989&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.7604793&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.144353&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.3115207&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.228746&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9809486&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%   
  filter (interaction == &amp;quot;sector and year&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sector and year) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-5&#34;&gt;Table 3: &lt;/span&gt;Correlation for F-value (sector and year) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.433516&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;33.8973413&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.307155&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;29.5467642&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.105104&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.0659029&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.207414&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;13.0526621&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.516074&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.1796329&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.006941&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5233548&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.574538&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3362535&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.274618&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1961501&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.451836&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8814544&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.373536&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7836435&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.346673&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7147906&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.419651&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4459847&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.331794&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1848832&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.194200&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1846190&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.022334&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1743591&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.161504&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0068543&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.969149&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0050259&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sector and year&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%   
  filter (interaction == &amp;quot;sex and sector&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (sex and sector) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-6&#34;&gt;Table 4: &lt;/span&gt;Correlation for F-value (sex and sector) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.133410&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;79.736907&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.228746&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;75.904108&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.087753&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;68.455216&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.994107&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;67.051008&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.279052&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;38.608554&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.592312&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;30.583657&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.144353&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;22.396698&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.383471&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;16.198924&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.083508&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.156166&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.541572&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;13.144544&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.850523&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11.478531&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.316554&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.349359&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.234948&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.109736&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.109153&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.668667&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.743468&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.370694&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.575584&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.834672&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.549989&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.337874&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;sex and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%   
  filter (interaction == &amp;quot;region and sector&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (region and sector) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-7&#34;&gt;Table 5: &lt;/span&gt;Correlation for F-value (region and sector) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.541572&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;16.7817739&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.316554&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.6603633&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.987167&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;14.5447961&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.575584&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10.9929801&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.635986&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.9897434&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.994107&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.9608534&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.228746&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.3539434&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.238072&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.7558819&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.143390&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.6578803&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.376311&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.6423707&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.307531&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.8460603&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.737061&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.5329715&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.850523&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0881293&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.549989&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2991877&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.087753&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4424330&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.109153&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3179558&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.155241&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8264589&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sector&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 1) %&amp;gt;%   
  filter (interaction == &amp;quot;region and sector&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (region, year and sex) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-8&#34;&gt;Table 6: &lt;/span&gt;Correlation for F-value (region, year and sex) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 1) %&amp;gt;%   
  filter (interaction == &amp;quot;region, sector, year and sex&amp;quot;) %&amp;gt;%
  filter (!(contcol.y &amp;lt; 3 &amp;amp; interaction == &amp;quot;region, sector, year and sex&amp;quot;)) %&amp;gt;%  
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (region, year and sex) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-9&#34;&gt;Table 7: &lt;/span&gt;Correlation for F-value (region, year and sex) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.218326&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7426159&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.276319&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6593769&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.629354&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4639758&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.364653&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2289954&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.629773&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2261226&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.036891&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0868544&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.867532&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8789097&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.147019&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7672297&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.270852&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6781257&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.594389&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9665480&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.028698&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7221792&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.067457&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6784005&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.885436&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5793881&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.169526&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4994580&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.071111&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4768272&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.349001&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3542025&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.489542&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2528065&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, sector, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Let’s check what we have found.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;962 Newspaper distributors, janitors and other service workers&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n + sex + NUTS2_sh + sector, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-101&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-10-1.png&#34; alt=&#34;Highest F-value sector, Newspaper distributors, janitors and other service workers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: Highest F-value sector, Newspaper distributors, janitors and other service workers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
    filter(`occuptional  (SSYK 2012)` == &amp;quot;962 Newspaper distributors, janitors and other service workers&amp;quot;) %&amp;gt;%
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ sector) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-102&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-10-2.png&#34; alt=&#34;Highest F-value sector, Newspaper distributors, janitors and other service workers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: Highest F-value sector, Newspaper distributors, janitors and other service workers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;332 Insurance advisers, sales and purchasing agents&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n + sex + NUTS2_sh + sector, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-11&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-11-1.png&#34; alt=&#34;Lowest F-value sector, Insurance advisers, sales and purchasing agents&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: Lowest F-value sector, Insurance advisers, sales and purchasing agents
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;241 Accountants, financial analysts and fund managers&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n + sex * sector + NUTS2_sh, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sector&amp;quot;, &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-121&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-12-1.png&#34; alt=&#34;Highest F-value interaction gender and sector, Accountants, financial analysts and fund managers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: Highest F-value interaction gender and sector, Accountants, financial analysts and fund managers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
    filter(`occuptional  (SSYK 2012)` == &amp;quot;241 Accountants, financial analysts and fund managers&amp;quot;) %&amp;gt;%
  filter (sector == &amp;quot;1-3 public sector&amp;quot;) %&amp;gt;%
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ sex) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-122&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-12-2.png&#34; alt=&#34;Highest F-value interaction gender and sector, Accountants, financial analysts and fund managers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: Highest F-value interaction gender and sector, Accountants, financial analysts and fund managers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
    filter(`occuptional  (SSYK 2012)` == &amp;quot;241 Accountants, financial analysts and fund managers&amp;quot;) %&amp;gt;%
  filter (sector == &amp;quot;4-5 private sector&amp;quot;) %&amp;gt;%  
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ sex) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-123&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-12-3.png&#34; alt=&#34;Highest F-value interaction gender and sector, Accountants, financial analysts and fund managers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: Highest F-value interaction gender and sector, Accountants, financial analysts and fund managers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;422 Client information clerks&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n + sex * sector + NUTS2_sh, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sector&amp;quot;, &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-13&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-13-1.png&#34; alt=&#34;Lowest F-value interaction gender and sector, Client information clerks&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: Lowest F-value interaction gender and sector, Client information clerks
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;422 Client information clerks&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n * sector + NUTS2_sh + sex , data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-141&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-14-1.png&#34; alt=&#34;Highest F-value interaction year and sector, Client information clerks&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 10: Highest F-value interaction year and sector, Client information clerks
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;422 Client information clerks&amp;quot;) %&amp;gt;%
  filter (sector == &amp;quot;1-3 public sector&amp;quot;) %&amp;gt;%  
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-142&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-14-2.png&#34; alt=&#34;Highest F-value interaction year and sector, Client information clerks&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 11: Highest F-value interaction year and sector, Client information clerks
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;422 Client information clerks&amp;quot;) %&amp;gt;%
  filter (sector == &amp;quot;4-5 private sector&amp;quot;) %&amp;gt;%  
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-143&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-14-3.png&#34; alt=&#34;Highest F-value interaction year and sector, Client information clerks&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 12: Highest F-value interaction year and sector, Client information clerks
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;331 Financial and accounting associate professionals&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n * sector + NUTS2_sh + sex , data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-15&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-15-1.png&#34; alt=&#34;Lowest F-value interaction year and sector, Financial and accounting associate professionals&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 13: Lowest F-value interaction year and sector, Financial and accounting associate professionals
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;432 Stores and transport clerks&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n + sector * NUTS2_sh + sex , data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-161&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-16-1.png&#34; alt=&#34;Highest F-value interaction region and sector, Stores and transport clerks&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 14: Highest F-value interaction region and sector, Stores and transport clerks
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;432 Stores and transport clerks&amp;quot;) %&amp;gt;%
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ sector) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-162&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-16-2.png&#34; alt=&#34;Highest F-value interaction region and sector, Stores and transport clerks&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 15: Highest F-value interaction region and sector, Stores and transport clerks
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;941 Fast-food workers, food preparation assistants&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n + sector * NUTS2_sh + sex , data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-17&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-17-1.png&#34; alt=&#34;Lowest F-value interaction sector and region, Fast-food workers, food preparation assistants&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 16: Lowest F-value interaction sector and region, Fast-food workers, food preparation assistants
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;351 ICT operations and user support technicians&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n * NUTS2_sh * sex * sector, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sector&amp;quot;,  &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Package `see` needed to plot multiple panels in one integrated figure.
## Please install it by typing `install.packages(&amp;quot;see&amp;quot;, dependencies = TRUE)` into
## the console.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [[1]]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-181&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-18-1.png&#34; alt=&#34;Highest F-value interaction sector, region, year and gender, ICT operations and user support technicians&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 17: Highest F-value interaction sector, region, year and gender, ICT operations and user support technicians
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## 
## [[2]]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-182&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-18-2.png&#34; alt=&#34;Highest F-value interaction sector, region, year and gender, ICT operations and user support technicians&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 18: Highest F-value interaction sector, region, year and gender, ICT operations and user support technicians
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;351 ICT operations and user support technicians&amp;quot;) %&amp;gt;%
  filter (sector == &amp;quot;1-3 public sector&amp;quot;) %&amp;gt;%
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-183&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-18-3.png&#34; alt=&#34;Highest F-value interaction sector, region, year and gender, ICT operations and user support technicians&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 19: Highest F-value interaction sector, region, year and gender, ICT operations and user support technicians
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
    filter(`occuptional  (SSYK 2012)` == &amp;quot;351 ICT operations and user support technicians&amp;quot;) %&amp;gt;%
  filter (sector == &amp;quot;4-5 private sector&amp;quot;) %&amp;gt;%  
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-184&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-18-4.png&#34; alt=&#34;Highest F-value interaction sector, region, year and gender, ICT operations and user support technicians&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 20: Highest F-value interaction sector, region, year and gender, ICT operations and user support technicians
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;  temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;422 Client information clerks&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n * NUTS2_sh * sex * sector, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sector&amp;quot;,  &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Package `see` needed to plot multiple panels in one integrated figure.
## Please install it by typing `install.packages(&amp;quot;see&amp;quot;, dependencies = TRUE)` into
## the console.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [[1]]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-191&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-19-1.png&#34; alt=&#34;Lowest F-value interaction sector, region, year and gender, Client information clerks&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 21: Lowest F-value interaction sector, region, year and gender, Client information clerks
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## 
## [[2]]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-192&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-19-the-significance-of-the-sector-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-19-2.png&#34; alt=&#34;Lowest F-value interaction sector, region, year and gender, Client information clerks&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 22: Lowest F-value interaction sector, region, year and gender, Client information clerks
&lt;/p&gt;
&lt;/div&gt;
</description>
    </item>
    
    <item>
      <title>The significance of the sector on the salary of engineers in Sweden</title>
      <link>http://mikaellundqvist.rbind.io/2020/02/09/the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden/</link>
      <pubDate>Sun, 09 Feb 2020 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2020/02/09/the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden/</guid>
      <description>


&lt;p&gt;So far I have analysed the effect of experience, education, gender, year and region on the salary of engineers in Sweden. In this post, I will have a look at the effect of the sector on the salary of engineers in Sweden.&lt;/p&gt;
&lt;p&gt;Statistics Sweden use NUTS (Nomenclature des Unités Territoriales Statistiques), which is the EU’s hierarchical regional division, to specify the regions.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse) &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages -------------------------------------- tidyverse 1.3.0 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.2.1     v purrr   0.3.3
## v tibble  2.1.3     v dplyr   0.8.3
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.4.0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ----------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (broom) 
library (car)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (swemaps) # devtools::install_github(&amp;#39;reinholdsson/swemaps&amp;#39;)
library(sjPlot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Registered S3 methods overwritten by &amp;#39;lme4&amp;#39;:
##   method                          from
##   cooks.distance.influence.merMod car 
##   influence.merMod                car 
##   dfbeta.influence.merMod         car 
##   dfbetas.influence.merMod        car&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Install package &amp;quot;strengejacke&amp;quot; from GitHub (`devtools::install_github(&amp;quot;strengejacke/strengejacke&amp;quot;)`) to load all sj-packages at once!&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library(leaps)
library(MASS)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;MASS&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     select&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;readfile &amp;lt;- function (file1){  
  read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%  
    gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = salary) %&amp;gt;%  
    drop_na() %&amp;gt;%  
    mutate (year_n = parse_number (year))
}
nuts &amp;lt;- read.csv(&amp;quot;nuts.csv&amp;quot;) %&amp;gt;%
  mutate(NUTS2_sh = substr(NUTS2, 1, 4))
map_ln_n &amp;lt;- map_ln %&amp;gt;%
  mutate(lnkod_n = as.numeric(lnkod)) &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data table is downloaded from Statistics Sweden. It is saved as a comma-delimited file without heading, 000000CG.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I have renamed the file to 000000CG_sector.csv because the filename 000000CG.csv was used in a previous post.&lt;/p&gt;
&lt;p&gt;The table: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2018 Monthly salary 1-3 public sector 4-5 private sector&lt;/p&gt;
&lt;p&gt;We expect that the sector is an important factor in salaries. As a null hypothesis, we assume that the sector is not related to the salary and examine if we can reject this hypothesis with the data from Statistics Sweden.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb &amp;lt;- readfile (&amp;quot;000000CG_sector.csv&amp;quot;) %&amp;gt;%
  filter (`occuptional  (SSYK 2012)` == &amp;quot;214 Engineering professionals&amp;quot;) %&amp;gt;% 
  left_join(nuts %&amp;gt;% distinct (NUTS2_en, NUTS2_sh), by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `region`/`NUTS2_en` joining character vector and factor,
## coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map &amp;lt;- readfile (&amp;quot;000000CG_sector.csv&amp;quot;) %&amp;gt;%
  filter (`occuptional  (SSYK 2012)` == &amp;quot;214 Engineering professionals&amp;quot;) %&amp;gt;%
  left_join(nuts, by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `region`/`NUTS2_en` joining character vector and factor,
## coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
  filter (sector == &amp;quot;1-3 public sector&amp;quot;) %&amp;gt;%
  right_join(map_ln_n, by = c(&amp;quot;Länskod&amp;quot; = &amp;quot;lnkod_n&amp;quot;)) %&amp;gt;%
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
    facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-2&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-2-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, public sector, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: SSYK 214, Architects, engineers and related professionals, public sector, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
  filter (sector == &amp;quot;4-5 private sector&amp;quot;) %&amp;gt;%
  right_join(map_ln_n, by = c(&amp;quot;Länskod&amp;quot; = &amp;quot;lnkod_n&amp;quot;)) %&amp;gt;%
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
    facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-3&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-3-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, private sector, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: SSYK 214, Architects, engineers and related professionals, private sector, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb %&amp;gt;%
  ggplot () +  
    geom_point (mapping = aes(x = year_n, y = salary, colour = region, shape=sex)) + 
    facet_grid(. ~ sector) +
  labs(
    x = &amp;quot;Year&amp;quot;,
    y = &amp;quot;Salary (SEK/month)&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-4&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-4-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Before I investigate all possible combinations of the sector and the other factors I shall see if there is some way to predict what factors and interactions that are most significant.&lt;/p&gt;
&lt;p&gt;First, use regsubsets to find the model which minimises AIC (Akaike information criterion). Regsubsets is a generic function for regression subset selection with methods for formula and matrix arguments.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;b &amp;lt;- regsubsets (log(salary) ~ sector * (year_n + sex + NUTS2_sh), data = tb,  nvmax = 20)
rs &amp;lt;- summary(b)
AIC &amp;lt;- 50 * log (rs$rss / 50) + (2:20) * 2
which.min (AIC)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 13&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;names (rs$which[13,])[rs$which[13,]]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;##  [1] &amp;quot;(Intercept)&amp;quot;                          
##  [2] &amp;quot;sector4-5 private sector&amp;quot;             
##  [3] &amp;quot;year_n&amp;quot;                               
##  [4] &amp;quot;sexwomen&amp;quot;                             
##  [5] &amp;quot;NUTS2_shSE12&amp;quot;                         
##  [6] &amp;quot;NUTS2_shSE21&amp;quot;                         
##  [7] &amp;quot;NUTS2_shSE22&amp;quot;                         
##  [8] &amp;quot;NUTS2_shSE33&amp;quot;                         
##  [9] &amp;quot;sector4-5 private sector:year_n&amp;quot;      
## [10] &amp;quot;sector4-5 private sector:NUTS2_shSE21&amp;quot;
## [11] &amp;quot;sector4-5 private sector:NUTS2_shSE23&amp;quot;
## [12] &amp;quot;sector4-5 private sector:NUTS2_shSE31&amp;quot;
## [13] &amp;quot;sector4-5 private sector:NUTS2_shSE32&amp;quot;
## [14] &amp;quot;sector4-5 private sector:NUTS2_shSE33&amp;quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;As a complement, I use stepwise model selection to find the model which fits the data best. StepAIC performs stepwise model selection by AIC.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;-lm (log(salary) ~ year_n * sex * NUTS2_sh * sector, data = tb) 
b &amp;lt;- stepAIC(model, direction = c(&amp;quot;both&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Start:  AIC=-1200.79
## log(salary) ~ year_n * sex * NUTS2_sh * sector
## 
##                              Df Sum of Sq      RSS     AIC
## - year_n:sex:NUTS2_sh:sector  7  0.001441 0.041008 -1209.1
## &amp;lt;none&amp;gt;                                    0.039567 -1200.8
## 
## Step:  AIC=-1209.07
## log(salary) ~ year_n + sex + NUTS2_sh + sector + year_n:sex + 
##     year_n:NUTS2_sh + sex:NUTS2_sh + year_n:sector + sex:sector + 
##     NUTS2_sh:sector + year_n:sex:NUTS2_sh + year_n:sex:sector + 
##     year_n:NUTS2_sh:sector + sex:NUTS2_sh:sector
## 
##                              Df Sum of Sq      RSS     AIC
## &amp;lt;none&amp;gt;                                    0.041008 -1209.1
## - year_n:sex:NUTS2_sh         7 0.0047401 0.045748 -1205.6
## - year_n:sex:sector           1 0.0022478 0.043256 -1202.5
## - year_n:NUTS2_sh:sector      7 0.0058131 0.046821 -1201.9
## + year_n:sex:NUTS2_sh:sector  7 0.0014410 0.039567 -1200.8
## - sex:NUTS2_sh:sector         7 0.0080176 0.049026 -1194.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- lm(log(salary) ~ year_n + sex + NUTS2_sh + sector + 
    year_n:sex + year_n:NUTS2_sh + sex:NUTS2_sh + year_n:sector + 
    sex:sector + NUTS2_sh:sector + year_n:sex:NUTS2_sh + year_n:sex:sector + 
    year_n:NUTS2_sh:sector + sex:NUTS2_sh:sector, data = tb)
summary(model)$adj.r.squared &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.9135882&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;Anova(model, type = 2) %&amp;gt;% 
  tidy() %&amp;gt;% 
  arrange (desc (statistic)) %&amp;gt;% 
  filter(p.value &amp;lt; 0.05) %&amp;gt;% 
  knitr::kable( 
  booktabs = TRUE,
  caption = &amp;#39;Anova report from linear model fit&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-6&#34;&gt;Table 1: &lt;/span&gt;Anova report from linear model fit&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;term&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;sumsq&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;df&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;statistic&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;p.value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2069351&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;519.760278&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sex&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1113983&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;139.899908&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sector&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0952663&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;119.640560&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_sh&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2322097&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;14&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;41.660196&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:sector&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0120669&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;30.308411&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000003&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_sh:sector&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0523275&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;18.775900&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:sex&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0023493&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.900761&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0168659&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:sex:sector&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0022478&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.645699&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0193467&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sex:sector&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0018231&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.579079&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0347260&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sex:NUTS2_sh&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0106289&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.813803&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0010092&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sex:NUTS2_sh:sector&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0080176&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.876825&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0087375&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_sh&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0078670&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.822810&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0098854&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;There are interactions between the different factors that are significant, i.e. have a p-value less than 0,05 but does not qualify because it´s inclusion in the model does not imply that it lowers the AIC value. The tradeoff between the goodness of fit of the model and the simplicity of the model leads me to exclude those interactions from the model we will examine further.&lt;/p&gt;
&lt;p&gt;The model I chose from based on the AIC results is: log(salary) ~ year_n * sector + NUTS2_sh * sector + sex&lt;/p&gt;
&lt;p&gt;From this model, the F-value from the Anova table for the sector is 146 (Pr(&amp;gt;F) &amp;lt; 2.2e-16), sufficient for rejecting the null hypothesis that the sector has no effect on the salary holding year as constant. The adjusted R-squared value is 0,870 implying a good fit of the model.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- model &amp;lt;-lm (log(salary) ~ year_n * sector + NUTS2_sh * sector + sex, data = tb)
tb &amp;lt;- bind_cols(tb, as_tibble(exp(predict(model, tb, interval = &amp;quot;confidence&amp;quot;))))
tb %&amp;gt;%
  ggplot () +  
    geom_point (mapping = aes(x = year_n,y = fit, colour = region, shape=sex)) + 
    facet_grid(. ~ sector) +
  labs(
    x = &amp;quot;Year&amp;quot;,
    y = &amp;quot;Salary (SEK/month)&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-71&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-7-1.png&#34; alt=&#34;Model fit, SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: Model fit, SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model) %&amp;gt;%  
  tidy() %&amp;gt;%
  knitr::kable( 
  booktabs = TRUE,
  caption = &amp;#39;Summary from linear model fit&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-7&#34;&gt;Table 2: &lt;/span&gt;Summary from linear model fit&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;term&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;estimate&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;std.error&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;statistic&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;p.value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;(Intercept)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-52.8857464&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.9015473&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-13.5550700&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0315705&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0019353&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;16.3130867&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sector4-5 private sector&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;24.7466021&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.5176204&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.4850135&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000150&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE12&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0633886&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0109476&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-5.7901587&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE21&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0951854&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0109476&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-8.6946021&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE22&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0542415&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0109476&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-4.9546264&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000020&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE23&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0304669&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0109476&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-2.7829655&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0061252&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE31&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0213974&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0109476&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-1.9545201&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0526182&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE32&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0304128&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0109476&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-2.7780207&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0062142&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE33&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0700399&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0109476&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-6.3977139&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0523393&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0038706&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-13.5223569&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:sector4-5 private sector&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0122815&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0027369&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-4.4873679&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000149&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sector4-5 private sector:NUTS2_shSE12&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0069109&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0154823&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4463758&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6560106&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sector4-5 private sector:NUTS2_shSE21&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0344624&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0154823&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-2.2259214&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0276066&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sector4-5 private sector:NUTS2_shSE22&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0089387&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0154823&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5773509&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5646232&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sector4-5 private sector:NUTS2_shSE23&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0206495&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0154823&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-1.3337474&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1844371&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sector4-5 private sector:NUTS2_shSE31&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0765503&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0154823&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-4.9443769&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000021&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sector4-5 private sector:NUTS2_shSE32&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0832467&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0154823&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-5.3768944&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000003&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sector4-5 private sector:NUTS2_shSE33&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0711249&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0154823&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-4.5939480&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000096&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model)$adj.r.squared &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.8699372&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;Anova(model, type=2) %&amp;gt;% 
  tidy() %&amp;gt;% 
  knitr::kable( 
  booktabs = TRUE,
  caption = &amp;#39;Anova report from linear model fit&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-7&#34;&gt;Table 2: &lt;/span&gt;Anova report from linear model fit&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;term&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;sumsq&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;df&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;statistic&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;p.value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2069351&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;345.32122&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.00e+00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sector&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0872899&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;145.66429&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.00e+00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_sh&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1798897&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;42.88421&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.00e+00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sex&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1095761&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;182.85414&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.00e+00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:sector&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0120669&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.13647&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.49e-05&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sector:NUTS2_sh&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0523275&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12.47444&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.00e+00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;Residuals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0844948&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;141&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(model, which = 1)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-72&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-7-2.png&#34; alt=&#34;Model fit, SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: Model fit, SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb[38,]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 1 x 11
##   region sector `occuptional  (~ sex   year  salary year_n NUTS2_sh    fit
##   &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;            &amp;lt;chr&amp;gt; &amp;lt;chr&amp;gt;  &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt; &amp;lt;chr&amp;gt;     &amp;lt;dbl&amp;gt;
## 1 SE12 ~ 1-3 p~ 214 Engineering~ women 2015   37600   2015 SE12     40664.
## # ... with 2 more variables: lwr &amp;lt;dbl&amp;gt;, upr &amp;lt;dbl&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb[55,]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 1 x 11
##   region sector `occuptional  (~ sex   year  salary year_n NUTS2_sh    fit
##   &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;            &amp;lt;chr&amp;gt; &amp;lt;chr&amp;gt;  &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt; &amp;lt;chr&amp;gt;     &amp;lt;dbl&amp;gt;
## 1 SE31 ~ 4-5 p~ 214 Engineering~ men   2015   37900   2015 SE31     41366.
## # ... with 2 more variables: lwr &amp;lt;dbl&amp;gt;, upr &amp;lt;dbl&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb[76,]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 1 x 11
##   region sector `occuptional  (~ sex   year  salary year_n NUTS2_sh    fit
##   &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;            &amp;lt;chr&amp;gt; &amp;lt;chr&amp;gt;  &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt; &amp;lt;chr&amp;gt;     &amp;lt;dbl&amp;gt;
## 1 SE21 ~ 4-5 p~ 214 Engineering~ women 2016   34600   2016 SE21     38773.
## # ... with 2 more variables: lwr &amp;lt;dbl&amp;gt;, upr &amp;lt;dbl&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Let’s check what we have found.&lt;/p&gt;
&lt;p&gt;For the sake of comparison, a model with no interactions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;-lm (log(salary) ~ year_n + sex + NUTS2_sh + sector, data = tb) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sex&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Package `see` needed to plot multiple panels in one integrated figure.
## Please install it by typing `install.packages(&amp;quot;see&amp;quot;, dependencies = TRUE)` into
## the console.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [[1]]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-81&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-8-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## 
## [[2]]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-82&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-8-2.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;First, we investigate the interaction between region and sector. All plots below are done with the model which minimised the AIC.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- model &amp;lt;-lm (log(salary) ~ year_n * sector + NUTS2_sh * sector + sex, data = tb)
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-9&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-9-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Also, examine the relationship between gender and sector.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- model &amp;lt;-lm (log(salary) ~ year_n * sector + NUTS2_sh * sector + sex, data = tb)

plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;sector&amp;quot;, &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-10&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-10-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;And the interaction between year and sector.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- model &amp;lt;-lm (log(salary) ~ year_n * sector + NUTS2_sh * sector + sex, data = tb)

plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-11&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-11-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 10: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;The relationship between gender, sector and region.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- model &amp;lt;-lm (log(salary) ~ year_n * sector + NUTS2_sh * sector + sex, data = tb)

plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;sector&amp;quot;, &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-12&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-12-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 11: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;The relationship between gender, sector and year.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- model &amp;lt;-lm (log(salary) ~ year_n * sector + NUTS2_sh * sector + sex, data = tb)
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;year_n&amp;quot;, &amp;quot;sector&amp;quot;, &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-13&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-13-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 12: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;The relationship between region, sector and year.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- model &amp;lt;-lm (log(salary) ~ year_n * sector + NUTS2_sh * sector + sex, data = tb)
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sector&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-14&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-14-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 13: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;The relationship between gender, region, sector and year.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;- model &amp;lt;-lm (log(salary) ~ year_n * sector + NUTS2_sh * sector + sex, data = tb)
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sector&amp;quot;, &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Package `see` needed to plot multiple panels in one integrated figure.
## Please install it by typing `install.packages(&amp;quot;see&amp;quot;, dependencies = TRUE)` into
## the console.&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [[1]]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-151&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-15-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 14: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre&gt;&lt;code&gt;## 
## [[2]]&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-152&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-09-the-significance-of-the-sector-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-15-2.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 15: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
</description>
    </item>
    
    <item>
      <title>The significance of the region on the salary in Sweden, a comparison between different occupational groups</title>
      <link>http://mikaellundqvist.rbind.io/2020/02/01/the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups/</link>
      <pubDate>Sat, 01 Feb 2020 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2020/02/01/the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups/</guid>
      <description>


&lt;p&gt;In my last post, I found that the region has a significant impact on the salary of engineers. Is the significance of the region unique to engineers or are there similar correlations in other occupational groups?&lt;/p&gt;
&lt;p&gt;Statistics Sweden use NUTS (Nomenclature des Unités Territoriales Statistiques), which is the EU’s hierarchical regional division, to specify the regions.&lt;/p&gt;
&lt;p&gt;The F-value from the Anova table is used as the single value to discriminate how much the region and salary correlates. For exploratory analysis, the Anova value seems good enough.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse) &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages -------------------------------------- tidyverse 1.3.0 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.2.1     v purrr   0.3.3
## v tibble  2.1.3     v dplyr   0.8.3
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.4.0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ----------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (broom) 
library (car)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (swemaps) # devtools::install_github(&amp;#39;reinholdsson/swemaps&amp;#39;)
library(sjPlot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Registered S3 methods overwritten by &amp;#39;lme4&amp;#39;:
##   method                          from
##   cooks.distance.influence.merMod car 
##   influence.merMod                car 
##   dfbeta.influence.merMod         car 
##   dfbetas.influence.merMod        car&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Install package &amp;quot;strengejacke&amp;quot; from GitHub (`devtools::install_github(&amp;quot;strengejacke/strengejacke&amp;quot;)`) to load all sj-packages at once!&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;readfile &amp;lt;- function (file1){  
  read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%  
    gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = salary) %&amp;gt;%  
    drop_na() %&amp;gt;%  
    mutate (year_n = parse_number (year))
}
nuts &amp;lt;- read.csv(&amp;quot;nuts.csv&amp;quot;) %&amp;gt;%
  mutate(NUTS2_sh = substr(NUTS2, 1, 4))
nuts %&amp;gt;% 
  distinct (NUTS2_en) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Nomenclature des Unités Territoriales Statistiques (NUTS)&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-1&#34;&gt;Table 1: &lt;/span&gt;Nomenclature des Unités Territoriales Statistiques (NUTS)&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;NUTS2_en&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE11 Stockholm&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE12 East-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE21 Småland and islands&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE22 South Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE23 West Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE31 North-Central Sweden&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE32 Central Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;SE33 Upper Norrland&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;map_ln_n &amp;lt;- map_ln %&amp;gt;%
  mutate(lnkod_n = as.numeric(lnkod)) &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data table is downloaded from Statistics Sweden. It is saved as a comma-delimited file without heading, 000000CG.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The table: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2018 Monthly salary All sectors&lt;/p&gt;
&lt;p&gt;In the plot and tables, you can also find information on how the increase in salaries per year for each occupational group is affected when the interactions are taken into account.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb &amp;lt;- readfile (&amp;quot;000000CG.csv&amp;quot;) %&amp;gt;%
  left_join(nuts %&amp;gt;% distinct (NUTS2_en, NUTS2_sh), by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `region`/`NUTS2_en` joining character vector and factor,
## coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map &amp;lt;- readfile (&amp;quot;000000CG.csv&amp;quot;) %&amp;gt;%
  left_join(nuts, by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) %&amp;gt;%  
  right_join(map_ln_n, by = c(&amp;quot;Länskod&amp;quot; = &amp;quot;lnkod_n&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `region`/`NUTS2_en` joining character vector and factor,
## coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary_table = vector()
anova_table = vector()
for (i in unique(tb$`occuptional  (SSYK 2012)`)){
  temp &amp;lt;- filter(tb, `occuptional  (SSYK 2012)` == i)
  if (dim(temp)[1] &amp;gt; 75){
    model &amp;lt;- lm(log(salary) ~ region + sex + year_n, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;none&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;none&amp;quot;))  
  
    model &amp;lt;- lm(log(salary) ~ region * sex + year_n, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;region and sex&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;region and sex&amp;quot;))
    
    model &amp;lt;- lm(log(salary) ~ region * year_n + sex, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;region and year&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;region and year&amp;quot;))   
    
    model &amp;lt;- lm(log(salary) ~ region * year_n * sex, data = temp)
    summary_table &amp;lt;- rbind (summary_table, mutate (tidy (summary (model)), ssyk = i, interaction = &amp;quot;region, year and sex&amp;quot;))
    anova_table &amp;lt;- rbind (anova_table, mutate (tidy (Anova (model, type = 2)), ssyk = i, interaction = &amp;quot;region, year and sex&amp;quot;))     
  }
}&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Note: model has aliased coefficients
##       sums of squares computed by model comparison
## Note: model has aliased coefficients
##       sums of squares computed by model comparison&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;anova_table &amp;lt;- anova_table %&amp;gt;% rowwise() %&amp;gt;% mutate(contcol = str_count(term, &amp;quot;:&amp;quot;)) 

summary_table &amp;lt;- summary_table %&amp;gt;% rowwise() %&amp;gt;% mutate(contcol = str_count(term, &amp;quot;:&amp;quot;))

merge(summary_table, anova_table, by = c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (term.y == &amp;quot;region&amp;quot;) %&amp;gt;%    
  filter (interaction == &amp;quot;none&amp;quot;) %&amp;gt;%
  
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  ggplot () +
    geom_point (mapping = aes(x = estimate, y = statistic.y, colour = interaction)) +
    labs(
      x = &amp;quot;Increase in salaries (% / year)&amp;quot;,
      y = &amp;quot;F-value for interaction&amp;quot;
    )   &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-2&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-2-1.png&#34; alt=&#34;The significance of the region on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: The significance of the region on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, by = c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%    
  # only look at the interactions between all three variables in the case with interaction region, year and sex
  filter (!(contcol.y == 1 &amp;amp; interaction == &amp;quot;region, year and sex&amp;quot;)) %&amp;gt;% 
  
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  ggplot () +
    geom_point (mapping = aes(x = estimate, y = statistic.y, colour = interaction)) +
    labs(
      x = &amp;quot;Increase in salaries (% / year)&amp;quot;,
      y = &amp;quot;F-value for interaction&amp;quot;
    )   &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-3&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-3-1.png&#34; alt=&#34;The significance of the interaction between region, year and sex on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: The significance of the interaction between region, year and sex on the salary in Sweden, a comparison between different occupational groups, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;The tables with all occupational groups sorted by F-value in descending order.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (term.y == &amp;quot;region&amp;quot;) %&amp;gt;%   
  filter (interaction == &amp;quot;none&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value for age` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value for age`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (region) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-4&#34;&gt;Table 2: &lt;/span&gt;Correlation for F-value (region) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value for age&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.505364&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;140.459561&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.141124&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;137.227070&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.412305&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;126.200697&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;141 Primary and secondary schools and adult education managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.543591&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;118.692580&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.133970&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;108.141526&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.196568&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;103.500079&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.910500&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;71.550568&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;336 Police officers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.280076&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;70.269911&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.040018&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;64.180404&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.210947&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;58.449386&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.868739&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;49.435480&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.377886&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;43.017847&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.016965&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;42.321607&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.002819&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;40.294194&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.831305&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;39.372062&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.001888&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;36.961185&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.304699&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;35.545371&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.682606&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;30.352218&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.217703&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;29.319658&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.012209&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;27.254061&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.455192&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;25.902695&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.218409&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;24.973290&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.276723&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;23.659505&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.601340&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;22.810204&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.532877&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.769863&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;266 Social work and counselling professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.965491&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;19.825931&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.060828&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;19.127036&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.956992&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;16.198710&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.309857&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12.736283&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.613786&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;12.424504&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;232 Vocational education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.990624&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11.524474&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;221 Medical doctors&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.902755&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.634942&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.843752&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.137514&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.756431&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.061511&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.740067&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.765145&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;522 Shop staff&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.903890&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.830648&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.705999&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.078780&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.705670&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.865026&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.389682&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.371317&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.227375&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.219358&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;833 Heavy truck and bus drivers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.912077&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.247326&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.016100&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.711840&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%   
  filter (interaction == &amp;quot;region and sex&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value for age` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value for age`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (region and sex) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-5&#34;&gt;Table 3: &lt;/span&gt;Correlation for F-value (region and sex) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value for age&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0169648&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;23.9056822&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0160997&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.0815382&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6137864&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.7168336&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6826060&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.6873851&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4123053&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.3090755&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1411239&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.0798948&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0018877&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.4194926&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2767234&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.1363582&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3101043&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.8795657&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1339700&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.8162101&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7191768&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4940939&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0400185&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3402726&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3896824&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0479843&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8593806&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0366516&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2109466&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9986405&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7564313&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9661198&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.5053638&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7061253&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0028190&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6793275&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;232 Vocational education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9906243&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5473580&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.7059985&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3861956&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9105004&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3851151&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2005440&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3538771&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2184087&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3283437&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1965679&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3071242&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;141 Primary and secondary schools and adult education managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.5435906&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2283878&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9569919&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0176966&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2273749&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9439585&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;522 Shop staff&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9038903&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9435000&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0399065&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8087907&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;833 Heavy truck and bus drivers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9298918&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7646741&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6013400&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5532994&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.4564515&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3795888&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7400674&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3302289&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8437523&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3111491&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;266 Social work and counselling professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9654913&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1228380&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7056704&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0829037&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5162972&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8523619&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;336 Police officers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2800755&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8458087&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3778859&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7369872&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;221 Medical doctors&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8945233&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5918577&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3098566&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3654042&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.0122087&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1103390&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 0) %&amp;gt;%   
  filter (interaction == &amp;quot;region and year&amp;quot;) %&amp;gt;%
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value for age` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value for age`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (region and year) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-6&#34;&gt;Table 4: &lt;/span&gt;Correlation for F-value (region and year) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value for age&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.594527&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.5756908&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.741438&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.4929762&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.014436&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.5221538&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.960551&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.7726084&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.179665&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.6377998&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;141 Primary and secondary schools and adult education managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.464391&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4565788&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.190339&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1807419&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.946134&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1384371&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.202935&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0929465&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.818022&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8907900&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.794241&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6351058&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.836449&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5772805&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;336 Police officers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.238027&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2608889&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;221 Medical doctors&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.577680&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1873354&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;266 Social work and counselling professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.269070&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0856790&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.012733&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0738388&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.929570&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0713461&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.854891&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0354065&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.020091&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9403580&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.197316&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9390313&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;232 Vocational education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.729880&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7811629&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.937534&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7459584&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.870052&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6496037&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.263332&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5866915&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.800949&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5667053&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.939365&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3862925&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.112492&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.3754541&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.189907&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2977035&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.418897&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2189448&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.620417&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1684118&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.212719&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1514498&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;833 Heavy truck and bus drivers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.823095&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0719499&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.438852&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9563272&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.093243&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8517395&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.079578&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7062153&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;522 Shop staff&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.500507&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6743597&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.008445&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6349934&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.153132&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5758246&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.702978&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5743298&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.363946&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5084936&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.820296&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4615622&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.488850&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4542178&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region and year&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;merge(summary_table, anova_table, c(&amp;quot;ssyk&amp;quot;, &amp;quot;interaction&amp;quot;), all = TRUE) %&amp;gt;%
  filter (term.x == &amp;quot;year_n&amp;quot;) %&amp;gt;%
  filter (contcol.y &amp;gt; 1) %&amp;gt;%   
  filter (interaction == &amp;quot;region, year and sex&amp;quot;) %&amp;gt;%
  filter (!(contcol.y == 1 &amp;amp; interaction == &amp;quot;region, year and sex&amp;quot;)) %&amp;gt;%   
  mutate (estimate = (exp(estimate) - 1) * 100) %&amp;gt;%  
  select (ssyk, estimate, statistic.y, interaction) %&amp;gt;%
  rename (`F-value for age` = statistic.y) %&amp;gt;%
  rename (`Increase in salary` = estimate) %&amp;gt;%
  arrange (desc (`F-value for age`)) %&amp;gt;%
  knitr::kable(
    booktabs = TRUE,
    caption = &amp;#39;Correlation for F-value (region, year and sex) and the yearly increase in salaries&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-7&#34;&gt;Table 5: &lt;/span&gt;Correlation for F-value (region, year and sex) and the yearly increase in salaries&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;ssyk&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;Increase in salary&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;F-value for age&lt;/th&gt;
&lt;th align=&#34;left&#34;&gt;interaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;531 Child care workers and teachers aides&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6212785&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.6701912&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;541 Other surveillance and security workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8239443&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3698474&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;218 Specialists within environmental and health protection&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4738659&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2049100&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;331 Financial and accounting associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1908239&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8847688&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;351 ICT operations and user support technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3582487&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.5229634&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;221 Medical doctors&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2578495&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.3158388&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;411 Office assistants and other secretaries&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9518139&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7466381&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;141 Primary and secondary schools and adult education managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.5500329&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7360681&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;512 Cooks and cold-buffet managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.9252389&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7021536&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;251 ICT architects, systems analysts and test managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0097672&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5905499&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;242 Organisation analysts, policy administrators and human resource specialists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.0886458&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5752902&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;941 Fast-food workers, food preparation assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0629882&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5615772&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;232 Vocational education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.8326506&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5493239&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;235 Teaching professionals not elsewhere classified&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2656111&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2406770&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;911 Cleaners and helpers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7251553&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2122343&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;332 Insurance advisers, sales and purchasing agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.6964107&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9875563&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;833 Heavy truck and bus drivers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8960959&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9786211&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;532 Personal care workers in health services&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.0120859&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9603131&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;335 Tax and related government associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.8095715&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9471462&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;266 Social work and counselling professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.1855410&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9152029&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;123 Administration and planning managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.9661945&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8530921&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;159 Other social services managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.6152072&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8505913&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;533 Health care assistants&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8690208&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7855258&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;231 University and higher education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6422359&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7732961&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;241 Accountants, financial analysts and fund managers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.3332928&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7520525&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;333 Business services agents&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9959201&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7345545&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;233 Secondary education teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.7756980&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6833044&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;534 Attendants, personal assistants and related workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8119543&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6586806&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;243 Marketing and public relations professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.6359856&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6487796&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;214 Engineering professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2789556&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6307550&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;234 Primary- and pre-school teachers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.7865061&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6132542&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;264 Authors, journalists and linguists&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0415688&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5809769&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;222 Nursing professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.2654653&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5702894&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;962 Newspaper distributors, janitors and other service workers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.4942008&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5531934&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;522 Shop staff&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.9107242&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5165112&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;321 Medical and pharmaceutical technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4804846&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4863120&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;341 Social work and religious associate professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7370630&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3372004&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;311 Physical and engineering science technicians&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.1802298&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3313909&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;261 Legal professionals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.2233855&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2620376&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;432 Stores and transport clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.7998663&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1870227&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;422 Client information clerks&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.0842242&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1733253&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;336 Police officers&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.2164461&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1482551&lt;/td&gt;
&lt;td align=&#34;left&#34;&gt;region, year and sex&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Let’s check what we have found.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;234 Primary- and pre-school teachers&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n + sex + NUTS2_sh, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-81&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-8-1.png&#34; alt=&#34;Highest F-value region, Primary- and pre-school teachers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: Highest F-value region, Primary- and pre-school teachers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
    filter(`occuptional  (SSYK 2012)` == &amp;quot;234 Primary- and pre-school teachers&amp;quot;) %&amp;gt;%
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-82&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-8-2.png&#34; alt=&#34;Highest F-value region, Primary- and pre-school teachers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: Highest F-value region, Primary- and pre-school teachers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;911 Cleaners and helpers&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n + sex + NUTS2_sh, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-9&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-9-1.png&#34; alt=&#34;Lowest F-value region, Cleaners and helpers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: Lowest F-value region, Cleaners and helpers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;331 Financial and accounting associate professionals&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n + sex * NUTS2_sh, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-101&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-10-1.png&#34; alt=&#34;Highest F-value interaction gender and region, Financial and accounting associate professionals&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: Highest F-value interaction gender and region, Financial and accounting associate professionals
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
    filter(`occuptional  (SSYK 2012)` == &amp;quot;331 Financial and accounting associate professionals&amp;quot;) %&amp;gt;%
  filter (sex == &amp;quot;men&amp;quot;) %&amp;gt;%
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-102&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-10-2.png&#34; alt=&#34;Highest F-value interaction gender and region, Financial and accounting associate professionals&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: Highest F-value interaction gender and region, Financial and accounting associate professionals
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
    filter(`occuptional  (SSYK 2012)` == &amp;quot;331 Financial and accounting associate professionals&amp;quot;) %&amp;gt;%
  filter (sex == &amp;quot;women&amp;quot;) %&amp;gt;%  
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-103&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-10-3.png&#34; alt=&#34;Highest F-value interaction gender and region, Financial and accounting associate professionals&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: Highest F-value interaction gender and region, Financial and accounting associate professionals
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;222 Nursing professionals&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n + sex * NUTS2_sh, data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-11&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-11-1.png&#34; alt=&#34;Lowest F-value interaction gender and region, Nursing professionals&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: Lowest F-value interaction gender and region, Nursing professionals
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;222 Nursing professionals&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n * NUTS2_sh + sex , data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;year_n&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-121&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-12-1.png&#34; alt=&#34;Highest F-value interaction year and region, Nursing professionals&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 10: Highest F-value interaction year and region, Nursing professionals
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;222 Nursing professionals&amp;quot;) %&amp;gt;%
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-122&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-12-2.png&#34; alt=&#34;Highest F-value interaction year and region, Nursing professionals&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 11: Highest F-value interaction year and region, Nursing professionals
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;541 Other surveillance and security workers&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n * NUTS2_sh + sex , data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;year_n&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-13&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-13-1.png&#34; alt=&#34;Lowest F-value interaction year and region, Other surveillance and security workers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 12: Lowest F-value interaction year and region, Other surveillance and security workers
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;531 Child care workers and teachers aides&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n * NUTS2_sh * sex , data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-141&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-14-1.png&#34; alt=&#34;Highest F-value interaction region, year and gender, Child care workers and teachers aides&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 13: Highest F-value interaction region, year and gender, Child care workers and teachers aides
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;531 Child care workers and teachers aides&amp;quot;) %&amp;gt;%
  filter (sex == &amp;quot;men&amp;quot;) %&amp;gt;%
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-142&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-14-2.png&#34; alt=&#34;Highest F-value interaction region, year and gender, Child care workers and teachers aides&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 14: Highest F-value interaction region, year and gender, Child care workers and teachers aides
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
    filter(`occuptional  (SSYK 2012)` == &amp;quot;531 Child care workers and teachers aides&amp;quot;) %&amp;gt;%
  filter (sex == &amp;quot;women&amp;quot;) %&amp;gt;%  
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-143&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-14-3.png&#34; alt=&#34;Highest F-value interaction region, year and gender, Child care workers and teachers aides&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 15: Highest F-value interaction region, year and gender, Child care workers and teachers aides
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;temp &amp;lt;- tb %&amp;gt;%
  filter(`occuptional  (SSYK 2012)` == &amp;quot;336 Police officers&amp;quot;)
 
model &amp;lt;-lm (log(salary) ~ year_n * NUTS2_sh * sex , data = temp) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-15&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-02-01-the-significance-of-the-region-on-the-salary-in-sweden-a-comparison-between-different-occupational-groups_files/figure-html/unnamed-chunk-15-1.png&#34; alt=&#34;Lowest F-value interaction region, year and gender, Police officers&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 16: Lowest F-value interaction region, year and gender, Police officers
&lt;/p&gt;
&lt;/div&gt;
</description>
    </item>
    
    <item>
      <title>The significance of the region on the salary of engineers in Sweden</title>
      <link>http://mikaellundqvist.rbind.io/2020/01/29/the-significance-of-the-region-on-the-salary-of-engineers-in-sweden/</link>
      <pubDate>Wed, 29 Jan 2020 00:00:00 +0000</pubDate>
      
      <guid>http://mikaellundqvist.rbind.io/2020/01/29/the-significance-of-the-region-on-the-salary-of-engineers-in-sweden/</guid>
      <description>


&lt;p&gt;So far I have analysed the effect of experience, education, gender and year on the salary of engineers in Sweden. In this post, I will have a look at the effect of the region on the salary of engineers in Sweden.&lt;/p&gt;
&lt;p&gt;Statistics Sweden use NUTS (Nomenclature des Unités Territoriales Statistiques), which is the EU’s hierarchical regional division, to specify the regions.&lt;/p&gt;
&lt;p&gt;First, define libraries and functions.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (tidyverse) &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Attaching packages --------------------- tidyverse 1.3.0 --&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## v ggplot2 3.2.1     v purrr   0.3.3
## v tibble  2.1.3     v dplyr   0.8.3
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.4.0&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## -- Conflicts ------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (broom) 
library (car)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Loading required package: carData&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## 
## Attaching package: &amp;#39;car&amp;#39;&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:dplyr&amp;#39;:
## 
##     recode&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## The following object is masked from &amp;#39;package:purrr&amp;#39;:
## 
##     some&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;library (swemaps) # devtools::install_github(&amp;#39;reinholdsson/swemaps&amp;#39;)
library(sjPlot)&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Registered S3 methods overwritten by &amp;#39;lme4&amp;#39;:
##   method                          from
##   cooks.distance.influence.merMod car 
##   influence.merMod                car 
##   dfbeta.influence.merMod         car 
##   dfbetas.influence.merMod        car&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Install package &amp;quot;strengejacke&amp;quot; from GitHub (`devtools::install_github(&amp;quot;strengejacke/strengejacke&amp;quot;)`) to load all sj-packages at once!&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;readfile &amp;lt;- function (file1){  
  read_csv (file1, col_types = cols(), locale = readr::locale (encoding = &amp;quot;latin1&amp;quot;), na = c(&amp;quot;..&amp;quot;, &amp;quot;NA&amp;quot;)) %&amp;gt;%  
    gather (starts_with(&amp;quot;19&amp;quot;), starts_with(&amp;quot;20&amp;quot;), key = &amp;quot;year&amp;quot;, value = salary) %&amp;gt;%  
    drop_na() %&amp;gt;%  
    mutate (year_n = parse_number (year))
}
nuts &amp;lt;- read.csv(&amp;quot;nuts.csv&amp;quot;) %&amp;gt;%
  mutate(NUTS2_sh = substr(NUTS2, 1, 4))

map_ln_n &amp;lt;- map_ln %&amp;gt;%
  mutate(lnkod_n = as.numeric(lnkod)) &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The data table is downloaded from Statistics Sweden. It is saved as a comma-delimited file without heading, 000000CG.csv, &lt;a href=&#34;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&#34; class=&#34;uri&#34;&gt;http://www.statistikdatabasen.scb.se/pxweb/en/ssd/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The table: Average basic salary, monthly salary and women´s salary as a percentage of men´s salary by region, sector, occupational group (SSYK 2012) and sex. Year 2014 - 2018 Monthly salary All sectors&lt;/p&gt;
&lt;p&gt;We expect that the region is an important factor in salaries. As a null hypothesis, we assume that the region is not related to the salary and examine if we can reject this hypothesis with the data from Statistics Sweden.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb &amp;lt;- readfile (&amp;quot;000000CG.csv&amp;quot;) %&amp;gt;%
  filter (`occuptional  (SSYK 2012)` == &amp;quot;214 Engineering professionals&amp;quot;) %&amp;gt;% 
  left_join(nuts %&amp;gt;% distinct (NUTS2_en, NUTS2_sh), by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `region`/`NUTS2_en` joining character vector and factor,
## coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map &amp;lt;- readfile (&amp;quot;000000CG.csv&amp;quot;) %&amp;gt;%
  filter (`occuptional  (SSYK 2012)` == &amp;quot;214 Engineering professionals&amp;quot;) %&amp;gt;%
  left_join(nuts, by = c(&amp;quot;region&amp;quot; = &amp;quot;NUTS2_en&amp;quot;)) &lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Warning: Column `region`/`NUTS2_en` joining character vector and factor,
## coercing into character vector&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
  filter (sex == &amp;quot;men&amp;quot;) %&amp;gt;%
  right_join(map_ln_n, by = c(&amp;quot;Länskod&amp;quot; = &amp;quot;lnkod_n&amp;quot;)) %&amp;gt;%
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-2&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-01-29-the-significance-of-the-region-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-2-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, men, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 1: SSYK 214, Architects, engineers and related professionals, men, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb_map %&amp;gt;%
  filter (sex == &amp;quot;women&amp;quot;) %&amp;gt;%
  right_join(map_ln_n, by = c(&amp;quot;Länskod&amp;quot; = &amp;quot;lnkod_n&amp;quot;)) %&amp;gt;%
  ggplot() +
    geom_polygon(mapping = aes(x = ggplot_long, y = ggplot_lat, group = lnkod, fill = salary)) +
      facet_grid(. ~ year) + 
    coord_equal() &lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-3&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-01-29-the-significance-of-the-region-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-3-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, women, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 2: SSYK 214, Architects, engineers and related professionals, women, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb %&amp;gt;%
  ggplot () +  
    geom_point (mapping = aes(x = year_n, y = salary, colour = region, shape=sex)) + 
  labs(
    x = &amp;quot;Year&amp;quot;,
    y = &amp;quot;Salary (SEK/month)&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-4&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-01-29-the-significance-of-the-region-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-4-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 3: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;The F-value from the Anova table for the region is 40 (Pr(&amp;gt;F) &amp;lt; 2.2e-16), sufficient for rejecting the null hypothesis that the region has no effect on the salary holding year as constant. The adjusted R-squared value is 0,882 implying a good fit of the model.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;-lm (log(salary) ~ year_n + sex + region , data = tb)

tb &amp;lt;- bind_cols(tb, as_tibble(exp(predict(model, tb, interval = &amp;quot;confidence&amp;quot;))))

tb %&amp;gt;%
  ggplot () +  
    geom_point (mapping = aes(x = year_n,y = fit, colour = region, shape=sex)) + 
  labs(
    x = &amp;quot;Year&amp;quot;,
    y = &amp;quot;Salary (SEK/month)&amp;quot;
  )&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-5&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-01-29-the-significance-of-the-region-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-5-1.png&#34; alt=&#34;Model fit, SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 4: Model fit, SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model) %&amp;gt;%  
  tidy() %&amp;gt;%
  knitr::kable( 
  booktabs = TRUE,
  caption = &amp;#39;Summary from linear model fit&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-5&#34;&gt;Table 1: &lt;/span&gt;Summary from linear model fit&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;term&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;estimate&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;std.error&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;statistic&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;p.value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;(Intercept)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-29.2269335&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.7348614&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-7.825440&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.00e+00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0198303&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0018526&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10.703985&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.00e+00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0587056&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0052400&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-11.203449&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.00e+00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regionSE12 East-Central Sweden&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0574855&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0104799&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-5.485297&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.00e-07&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regionSE21 Småland and islands&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.1286385&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0104799&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-12.274762&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.00e+00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regionSE22 South Sweden&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0457725&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0104799&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-4.367642&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.26e-05&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regionSE23 West Sweden&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0513546&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0104799&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-4.900285&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;6.00e-06&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regionSE31 North-Central Sweden&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0948080&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0104799&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-9.046630&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.00e+00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regionSE32 Central Norrland&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.1099716&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0104799&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-10.493550&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.00e+00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;regionSE33 Upper Norrland&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.1360235&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0104799&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-12.979443&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.00e+00&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model)$r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.8817871&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;Anova(model, type=2) %&amp;gt;% 
  tidy() %&amp;gt;% 
  knitr::kable( 
  booktabs = TRUE,
  caption = &amp;#39;Anova report from linear model fit&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-5&#34;&gt;Table 1: &lt;/span&gt;Anova report from linear model fit&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;term&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;sumsq&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;df&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;statistic&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;p.value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0629183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;114.57530&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sex&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0689270&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;125.51728&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;region&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1548911&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;40.29419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;Residuals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0384401&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;70&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Let’s check what we have found.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;-lm (log(salary) ~ year_n + sex + NUTS2_sh , data = tb) 
 
plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-61&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-01-29-the-significance-of-the-region-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-6-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 5: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(model, which = 1)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-62&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-01-29-the-significance-of-the-region-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-6-2.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 6: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb[38,]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 1 x 11
##   region sector `occuptional  (~ sex   year  salary year_n NUTS2_sh    fit
##   &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;            &amp;lt;chr&amp;gt; &amp;lt;chr&amp;gt;  &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt; &amp;lt;chr&amp;gt;     &amp;lt;dbl&amp;gt;
## 1 SE21 ~ 0 all~ 214 Engineering~ women 2016   34700   2016 SE21     38698.
## # ... with 2 more variables: lwr &amp;lt;dbl&amp;gt;, upr &amp;lt;dbl&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb[27,]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 1 x 11
##   region sector `occuptional  (~ sex   year  salary year_n NUTS2_sh    fit
##   &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;            &amp;lt;chr&amp;gt; &amp;lt;chr&amp;gt;  &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt; &amp;lt;chr&amp;gt;     &amp;lt;dbl&amp;gt;
## 1 SE31 ~ 0 all~ 214 Engineering~ men   2015   38100   2015 SE31     41616.
## # ... with 2 more variables: lwr &amp;lt;dbl&amp;gt;, upr &amp;lt;dbl&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb[5,]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 1 x 11
##   region sector `occuptional  (~ sex   year  salary year_n NUTS2_sh    fit
##   &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;            &amp;lt;chr&amp;gt; &amp;lt;chr&amp;gt;  &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt; &amp;lt;chr&amp;gt;     &amp;lt;dbl&amp;gt;
## 1 SE21 ~ 0 all~ 214 Engineering~ men   2014   41500   2014 SE21     39442.
## # ... with 2 more variables: lwr &amp;lt;dbl&amp;gt;, upr &amp;lt;dbl&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Also examine the interaction between gender and region. The F-value from the Anova table for the interaction is 2,7 (Pr(&amp;gt;F) &amp;lt; 0.017) implying a relation to 95 % significance.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;-lm (log(salary) ~ year_n + sex * NUTS2_sh , data = tb) 

summary(model) %&amp;gt;%  
  tidy() %&amp;gt;%
  knitr::kable( 
  booktabs = TRUE,
  caption = &amp;#39;Summary from linear model fit&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-7&#34;&gt;Table 2: &lt;/span&gt;Summary from linear model fit&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;term&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;estimate&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;std.error&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;statistic&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;p.value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;(Intercept)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-29.2212864&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.4559410&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-8.4553776&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0198303&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0017142&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;11.5678970&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0699998&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0137140&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-5.1042618&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000033&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE12&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0755067&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0137140&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-5.5058132&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000007&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE21&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.1161490&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0137140&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-8.4693756&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE22&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0520542&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0137140&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-3.7957018&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0003332&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE23&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0535387&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0137140&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-3.9039471&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0002331&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE31&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.1099009&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0137140&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-8.0137791&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE32&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.1293018&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0137140&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-9.4284543&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE33&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.1327796&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0137140&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-9.6820490&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sexwomen:NUTS2_shSE12&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0360425&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0193945&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.8583838&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0677877&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sexwomen:NUTS2_shSE21&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0249791&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0193945&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-1.2879441&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2024762&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sexwomen:NUTS2_shSE22&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0125634&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0193945&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6477815&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5194801&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sexwomen:NUTS2_shSE23&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0043683&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0193945&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2252313&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8225283&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sexwomen:NUTS2_shSE31&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0301860&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0193945&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.5564170&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1246186&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sexwomen:NUTS2_shSE32&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0386605&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0193945&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.9933706&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0505553&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sexwomen:NUTS2_shSE33&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0064879&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0193945&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3345206&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7390979&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model)$r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.908906&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;Anova(model, type=2) %&amp;gt;% 
  tidy() %&amp;gt;% 
  knitr::kable( 
  booktabs = TRUE,
  caption = &amp;#39;Anova report from linear model fit&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-7&#34;&gt;Table 2: &lt;/span&gt;Anova report from linear model fit&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;term&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;sumsq&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;df&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;statistic&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;p.value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0629183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;133.816241&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sex&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0689270&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;146.595736&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_sh&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1548911&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;47.060909&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sex:NUTS2_sh&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0088184&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.679327&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0170929&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;Residuals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0296216&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;63&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-71&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-01-29-the-significance-of-the-region-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-7-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 7: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(model, which = 1)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-72&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-01-29-the-significance-of-the-region-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-7-2.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 8: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;tb[37,]&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## # A tibble: 1 x 11
##   region sector `occuptional  (~ sex   year  salary year_n NUTS2_sh    fit
##   &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;  &amp;lt;chr&amp;gt;            &amp;lt;chr&amp;gt; &amp;lt;chr&amp;gt;  &amp;lt;dbl&amp;gt;  &amp;lt;dbl&amp;gt; &amp;lt;chr&amp;gt;     &amp;lt;dbl&amp;gt;
## 1 SE21 ~ 0 all~ 214 Engineering~ men   2016   40100   2016 SE21     41037.
## # ... with 2 more variables: lwr &amp;lt;dbl&amp;gt;, upr &amp;lt;dbl&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;And the interaction between year and region. The F-value from the Anova table for the region is 0,57 (Pr(&amp;gt;F) &amp;lt; 0,77) implying no significant relation.&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;-lm (log(salary) ~ year_n * NUTS2_sh + sex , data = tb) 
 
summary(model) %&amp;gt;%  
  tidy() %&amp;gt;%
  knitr::kable( 
  booktabs = TRUE,
  caption = &amp;#39;Summary from linear model fit&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-8&#34;&gt;Table 3: &lt;/span&gt;Summary from linear model fit&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;term&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;estimate&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;std.error&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;statistic&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;p.value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;(Intercept)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-32.1955668&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;10.7951966&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-2.9823975&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0040635&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0213028&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0053548&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.9782933&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0001818&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE12&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-4.0204905&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.2667129&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2633501&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7931402&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE21&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6481345&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.2667129&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0424541&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9662710&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE22&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;18.2873103&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.2667129&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.1978551&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2354607&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE23&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.7565167&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.2667129&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5080672&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6131806&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE31&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-5.4895464&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.2667129&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3595762&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7203666&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE32&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-3.2845607&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.2667129&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2151452&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8303490&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE33&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;9.2276482&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;15.2667129&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6044293&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5477290&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0587056&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0053548&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-10.9632632&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE12&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0019658&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0075728&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2595848&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7960305&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE21&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0003853&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0075728&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0508802&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.9595820&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE22&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0090938&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0075728&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-1.2008536&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2343036&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE23&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0038730&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0075728&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.5114312&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6108371&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE31&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0026760&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0075728&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3533662&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7249937&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE32&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0015747&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0075728&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2079419&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8359451&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE33&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0046447&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0075728&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.6133392&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5418602&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model)$r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.8888956&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;Anova(model, type=2) %&amp;gt;% 
  tidy() %&amp;gt;% 
  knitr::kable( 
  booktabs = TRUE,
  caption = &amp;#39;Anova report from linear model fit&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-8&#34;&gt;Table 3: &lt;/span&gt;Anova report from linear model fit&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;term&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;sumsq&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;df&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;statistic&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;p.value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0629183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;109.7152945&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_sh&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1548911&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;38.5850132&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sex&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0689270&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;120.1931409&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_sh&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0023115&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5758246&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7728945&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;Residuals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0361285&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;63&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;year_n&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-81&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-01-29-the-significance-of-the-region-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-8-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 9: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(model, which = 1)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-82&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-01-29-the-significance-of-the-region-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-8-2.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 10: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Finally the interaction between gender, year and region, the only significant interaction is between the region and gender, F-value from the Anova table for the interaction is 2,4 (Pr(&amp;gt;F) &amp;lt; 0.033)&lt;/p&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;model &amp;lt;-lm (log(salary) ~ year_n * NUTS2_sh * sex , data = tb) 
 
summary(model) %&amp;gt;%  
  tidy() %&amp;gt;%
  knitr::kable( 
  booktabs = TRUE,
  caption = &amp;#39;Summary from linear model fit&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-9&#34;&gt;Table 4: &lt;/span&gt;Summary from linear model fit&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;term&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;estimate&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;std.error&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;statistic&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;p.value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;(Intercept)&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-34.6715204&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;14.5497427&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-2.3829645&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0211805&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0225338&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0072171&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;3.1222585&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0030380&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE12&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.2021839&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.5764435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2528223&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8014851&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE21&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.5082002&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.5764435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2676945&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7900815&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE22&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;25.5308721&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.5764435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1.2407816&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2207168&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE23&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;16.1162328&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.5764435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7832370&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4373355&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE31&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-18.4371634&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.5764435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.8960326&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3747072&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE32&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7.6855067&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.5764435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3735100&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7104136&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE33&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;5.0530040&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.5764435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2455723&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8070603&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;4.8932017&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;20.5764435&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2378060&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8130438&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE12&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0026179&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0102066&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2564919&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7986672&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE21&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0027899&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0102066&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2733393&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7857651&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE22&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0126899&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0102066&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-1.2433117&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2197916&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE23&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0080207&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0102066&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.7858392&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4358239&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE31&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0090909&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0102066&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8906917&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3775375&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE32&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0038764&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0102066&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3797940&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7057736&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE33&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0025723&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0102066&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2520253&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8020975&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0024619&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0102066&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2412080&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8104213&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE12:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-18.4453487&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;29.0994854&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.6338720&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5291736&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE21:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-9.7201315&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;29.0994854&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.3340310&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7398112&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE22:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-14.4871236&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;29.0994854&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.4978481&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6208644&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE23:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-16.7194322&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;29.0994854&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.5745611&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5682714&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE31:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;25.8952341&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;29.0994854&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8898863&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3779654&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE32:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-21.9401348&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;29.0994854&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.7539699&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4545502&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_shSE33:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8.3492884&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;29.0994854&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.2869222&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7754068&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE12:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0091674&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0144343&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6351107&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5283723&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE21:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0048091&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0144343&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3331727&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7404549&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE22:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0071923&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0144343&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4982800&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6205623&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE23:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0082955&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0144343&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5747113&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.5681705&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE31:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0128299&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0144343&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.8888492&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.3785170&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE32:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0109022&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0144343&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7552986&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.4537602&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_shSE33:sexwomen&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.0041447&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0144343&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;-0.2871452&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7752371&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;summary(model)$r.squared&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## [1] 0.9231133&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;Anova(model, type=2) %&amp;gt;% 
  tidy() %&amp;gt;% 
  knitr::kable( 
  booktabs = TRUE,
  caption = &amp;#39;Anova report from linear model fit&amp;#39;)&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;caption&gt;&lt;span id=&#34;tab:unnamed-chunk-9&#34;&gt;Table 4: &lt;/span&gt;Anova report from linear model fit&lt;/caption&gt;
&lt;thead&gt;
&lt;tr class=&#34;header&#34;&gt;
&lt;th align=&#34;left&#34;&gt;term&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;sumsq&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;df&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;statistic&lt;/th&gt;
&lt;th align=&#34;right&#34;&gt;p.value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0629183&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;120.7946290&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_sh&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.1637127&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;14&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;22.4504512&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;sex&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0777463&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;8&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;18.6578050&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_sh&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0023115&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6339728&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7254512&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:sex&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0000085&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;1&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0163969&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.8986442&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;NUTS2_sh:sex&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0088184&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;2.4186030&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0332038&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;odd&#34;&gt;
&lt;td align=&#34;left&#34;&gt;year_n:NUTS2_sh:sex&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0022998&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;7&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.6307550&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.7280524&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&#34;even&#34;&gt;
&lt;td align=&#34;left&#34;&gt;Residuals&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;0.0250018&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;48&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;td align=&#34;right&#34;&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot_model(model, type = &amp;quot;pred&amp;quot;, terms = c(&amp;quot;NUTS2_sh&amp;quot;, &amp;quot;year_n&amp;quot;, &amp;quot;sex&amp;quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;## Model has log-transformed response. Back-transforming predictions to original response scale. Standard errors are still on the log-scale.&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-91&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-01-29-the-significance-of-the-region-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-9-1.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 11: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;r&#34;&gt;&lt;code&gt;plot(model, which = 1)&lt;/code&gt;&lt;/pre&gt;
&lt;div class=&#34;figure&#34;&gt;&lt;span id=&#34;fig:unnamed-chunk-92&#34;&gt;&lt;/span&gt;
&lt;img src=&#34;http://mikaellundqvist.rbind.io/post/2020-01-29-the-significance-of-the-region-on-the-salary-of-engineers-in-sweden_files/figure-html/unnamed-chunk-9-2.png&#34; alt=&#34;SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018&#34; width=&#34;672&#34; /&gt;
&lt;p class=&#34;caption&#34;&gt;
Figure 12: SSYK 214, Architects, engineers and related professionals, Year 2014 - 2018
&lt;/p&gt;
&lt;/div&gt;
</description>
    </item>
    
  </channel>
</rss>