Back


Goal 5: Gender equality

Average income


GS Average income by gender, place of residence and education
INXPI104_raw <- 
  "INXPI104" %>% 
  statgl_url(lang = language) %>% 
  statgl_fetch(
    "level of education" = px_all(),
    unit                 = 3,
    gender               = 1:2,
    age                  = c(0, 4),
    "type of income"     = 1,
    time                 = px_all(),
    .col_code            = TRUE
    ) %>% 
  as_tibble()


INXPI104 <- 
  INXPI104_raw %>%
  filter(
    value != "NA",
    age   == unique(INXPI104_raw %>% pull(age))[1]
    ) %>% 
  rename(
    "edu"  = `level of education`,
    "type" = `type of income`
    ) %>% 
  mutate(
    edu  = edu %>% fct_inorder(),
    type = type %>%  str_remove_all("[:digit:]|[:punct:]|\\+") %>% trimws()
    )

INXPI104 %>% 
  ggplot(aes(
    x     = time %>% as.numeric(),
    y     = value,
    color = gender %>% fct_rev()
  )) +
  geom_line(size = 2) +
  facet_wrap(~ edu) +
  theme_statgl() +
  scale_color_statgl() +
  scale_y_continuous(labels = function(x) format(x, big.mark = ".", scientific = FALSE)) +
  scale_x_continuous(breaks = scales:: pretty_breaks()) + 
  labs(
    title    = INXPI104 %>% pull(type) %>% unique(),
    subtitle = INXPI104 %>% pull(unit) %>% unique(),
    x        = " ",
    y        = " ",
    color    = " ",
    caption  = sdg5$figs$fig1$cap[language]
  )

StatBank

Method


tab <- 
  INXPI104 %>% 
  filter(time >= Sys.time() %>% year() - 7) %>% 
  mutate(time = time %>% fct_rev()) %>% 
  spread(time, value) %>% 
  select(-age)
  

tab %>% 
  select(-c(edu, unit, type)) %>% 
  rename(" " = 1) %>% 
  statgl_table() %>% 
  pack_rows(index = tab[["type"]] %>%  table()) %>% 
  pack_rows(index = tab[["edu"]] %>% table()) %>% 
  add_footnote(tab %>% pull(unit) %>% unique(), notation = "symbol")
2024 2023 2022 2021 2020 2019
Pretax Income total
Basic scool 8-10 grade
Men 246.130 242.372 234.324 216.600 221.765 220.133
Woman 186.549 178.302 172.812 165.146 162.849 159.516
Upper secondary school
Men 349.248 338.409 327.912 321.539 306.222 307.544
Woman 228.977 215.094 213.660 202.973 200.076 195.379
Vocational education
Men 432.780 419.922 409.975 391.283 399.353 385.654
Woman 321.476 309.519 304.231 290.398 284.749 282.021
Short-cycle higher education
Men 353.615 327.698 310.500 306.983 275.872 268.076
Woman 272.260 242.656 228.568 203.095 198.828 212.133
Medium-cycle higher education, Bachelors
Men 596.076 571.541 550.200 539.642 528.675 535.483
Woman 462.415 444.865 439.964 427.006 416.231 410.856
Long-cycle higher education
Men 827.517 789.057 760.808 766.408 759.769 767.176
Woman 671.863 614.281 609.123 601.243 589.539 575.814
* Average income for persons with type of income (DKK)
INXPI104 <- 
  INXPI104_raw %>%
  filter(
    value != "NA",
    age   == unique(INXPI104_raw %>% pull(age))[2]
  ) %>% 
  rename(
    "edu"  = `level of education`,
    "type" = `type of income`
  ) %>% 
  mutate(
    edu  = edu %>% fct_inorder(),
    type = type %>%  str_remove_all("[:digit:]|[:punct:]|\\+") %>% trimws()
  )

INXPI104 %>% 
  ggplot(aes(
    x     = time %>% as.numeric(),
    y     = value,
    color = gender %>% fct_rev()
  )) +
  geom_line(size = 2) +
  facet_wrap(~ edu) +
  theme_statgl() +
  scale_color_statgl() +
  scale_y_continuous(labels = function(x) format(x, big.mark = ".", scientific = FALSE)) +
  scale_x_continuous(breaks = scales:: pretty_breaks()) + 
  labs(
    title    = paste0(
      INXPI104 %>% pull(type) %>% unique(), ", ", 
      INXPI104 %>% pull(age) %>% unique()
    ),
    subtitle = INXPI104 %>% pull(unit) %>% unique(),
    x        = " ",
    y        = " ",
    color    = " ",
    caption  = sdg5$figs$fig1$cap[language]
  )

StatBank

Method


tab <- 
  INXPI104 %>% 
  filter(time >= Sys.time() %>% year() - 7) %>% 
  mutate(time = time %>% fct_rev()) %>% 
  spread(time, value) %>% 
  unite(type, type, age, sep = ", ")


tab %>% 
  select(-c(edu, unit, type)) %>% 
  rename(" " = 1) %>% 
  statgl_table() %>% 
  pack_rows(index = tab[["type"]] %>%  table()) %>% 
  pack_rows(index = tab[["edu"]] %>% table()) %>% 
  add_footnote(tab %>% pull(unit) %>% unique(), notation = "symbol")
2024 2023 2022 2021 2020 2019
Pretax Income total, 30-34 years
Basic scool 8-10 grade
Men 252.434 262.244 252.055 230.804 226.090 229.122
Woman 191.654 186.574 176.554 171.386 165.637 161.100
Upper secondary school
Men 320.323 314.355 293.683 296.680 289.586 313.604
Woman 238.633 209.734 202.595 207.268 191.671 188.423
Vocational education
Men 432.038 417.811 406.392 380.457 357.371 347.546
Woman 285.259 278.977 275.243 265.726 260.237 266.759
Short-cycle higher education
Men 388.152 359.467 350.995 349.079 306.309 294.879
Woman 278.932 246.090 251.569 208.128 222.469 208.038
Medium-cycle higher education, Bachelors
Men 497.088 485.544 496.798 498.912 473.930 446.026
Woman 403.970 386.579 383.420 377.972 359.267 359.695
Long-cycle higher education
Men 556.644 556.060 519.394 503.610 522.714 483.043
Woman 537.490 496.914 482.401 471.482 472.983 460.440
* Average income for persons with type of income (DKK)

Distribution of elected representatives by sex


FN 5.5.1 Proportion of female parlamentarians in the national parliament
# Import
ELEC03_raw <- 
  "https://pxweb.nordicstatistics.org:443/sq/e32a8e0a-b8fb-41ec-bbef-31c3bde52f42.csv" |> 
  read.csv() |> 
  as_tibble()

vec <- 1:24
names(vec) <- c("country", 2003:2025)

# Transform
ELEC03 <- 
  ELEC03_raw |> 
  rename(vec) |> 
  mutate(across(everything(), as.numeric),
         country = "greenland") |> 
  pivot_longer(cols = c("2003", "2004", "2005", "2006", "2007", "2008", "2009", 
                        "2010", "2011", "2012", "2013", "2014", "2015", "2016",
                        "2017", "2018", "2019", "2020", "2021", "2022", "2023",
                        "2024", "2025"),
               names_to = "time",
               values_to = "value") |> 
  drop_na(value)

# Plot
ELEC03 |> 
  ggplot(aes(
    x = time,
    y = value,
    fill = country
  )) +
  geom_col() +
  theme_statgl() +
  scale_fill_statgl() +
  theme(legend.position = "none") +
  labs(
    title   = sdg5$figs$fig2$title[language],
    x       = " ",
    y       = sdg5$figs$fig2$y_lab[language],
    fill    = " ",
    caption = sdg5$figs$fig2$cap[language]
  )

Nordic Statistics

Method


col0 <- sdg5$figs$fig2$col0[language]

# Tabel
ELEC03 |> 
  spread(time, value) |> 
  mutate(country = col0) |> 
  rename(" " = 1) |> 
  statgl_table() |> 
  add_footnote(sdg5$figs$fig2$foot[language], notation = "symbol")
2005 2009 2013 2014 2015 2016 2017 2018 2020 2021 2025
Amount of women 42 29 41 43 33 33 31 42 47 32 45
* Situation by end of the year

Economically disadvantaged


GS Proportion of economically disadvantaged by gender
# Import 
SOXOU01_raw <-
  statgl_url("SOXOU01", lang = language) %>%
  statgl_fetch(
    "inventory variable" = c("Andel50", "Andel60"),
    gender               = 1:2,
    year                 = px_all(),
    .col_code            = TRUE
    ) %>% 
    as_tibble()

# Transform
SOXOU01 <-
  SOXOU01_raw %>% 
  mutate(
    year   = year %>%  make_date(),
    gender = gender %>% fct_inorder()
    )

# Plot
SOXOU01 %>% 
  mutate(`inventory variable` = `inventory variable` %>% str_to_sentence()) %>% 
  ggplot(aes(
    x    = year,
    y    = value,
    fill = gender)) +
  geom_col(position = "dodge") +
  scale_y_continuous(labels  = scales::percent_format(
    scale        = 1, 
    accuracy     = 1, 
    big.mark     = ".",
    decimal.mark = ",")
    ) +
  facet_wrap(~ `inventory variable`) +
  theme_statgl() + 
  scale_fill_statgl(reverse = TRUE) +
  labs(
    title    = sdg5$figs$fig3$title[language],
    subtitle = sdg5$figs$fig3$sub[language],
    x        = " ", 
    y        = " ", 
    fill     = " ",
    caption  = sdg5$figs$fig3$cap[language]
  )

StatBank

Method


# Transform
SOXOU01 <-
  SOXOU01_raw %>% 
  arrange(desc(year)) %>% 
  filter(year >= year(Sys.time()) - 5) %>% 
  mutate(year = year %>% fct_inorder()) %>% 
  unite(combi, 1, 2, sep = ",") %>% 
  mutate(combi = combi %>% fct_inorder()) %>% 
  spread(1, 3)

vec      <- SOXOU01[-1] %>% colnames() %>% str_split(",") %>% unlist() %>% str_to_sentence()
head_vec <- vec[c(T, F)] %>% table()
col_vec  <- vec[c(F, T)]

# Table
SOXOU01 %>% 
  rename(" " = 1) %>% 
  statgl_table(col.names = c(" ", col_vec)) %>% 
  add_header_above(c(" ", head_vec)) %>% 
  add_footnote(
    sdg5$figs$fig3$foot[language],
    notation = "symbol"
    )
Fraction below 50%
Fraction below 60%
fraction below 50%,Female fraction below 50%,Male fraction below 60%,Female fraction below 60%,Male
2024 4,5 5,3 8,0 9,2
2023 3,9 5,0 7,7 8,7
2022 4,1 4,7 7,7 8,6
2021 3,8 4,3 7,4 7,9
* Proportion below 50 or 60% of median income

Grade test results


GS Grade test results by gender
# Import
UDXTKK_raw <-
  statgl_url("UDXTKK", lang = language) %>%
  statgl_fetch(subject   = px_all(),
               grade     = px_all(),
               sex       = 1:2,
               unit      = "B",
               time      = px_all(),
               .col_code = TRUE
               ) %>% 
    as_tibble()

# Transform
UDXTKK <- 
  UDXTKK_raw %>% 
  mutate(
    time     = time %>% make_date(),
     subject =  subject %>% fct_inorder()
    )

fig_legend   <- statgl_url("UDXTKK", lang = language) %>% statgl_fetch() %>% select(1) %>% colnames()
fig_title    <- (statgl_url("UDXTKK", lang = language) %>% statgl_meta())$title
fig_subtitle <- UDXTKK_raw[["unit"]] %>% unique()
  
# Plot
UDXTKK %>% 
  ggplot(aes(
    x = time,
    y = value,
    color = subject
  )) +
  geom_line(size = 2) +
  facet_grid(grade ~ sex) +
  theme_statgl() + 
  scale_color_statgl() +
  scale_y_continuous(labels  = scales::percent_format(
    scale        = 1, 
    accuracy     = 1, 
    big.mark     = ".",
    decimal.mark = ","
    )) +
  labs(
    title    = fig_title,
    subtitle = fig_subtitle,
    x        = " ",
    y        = " ",
    color    = fig_legend,
    caption  = sdg5$figs$fig4$cap[language]
  )

StatBank

Method


UDXTKK <- 
  UDXTKK_raw %>% 
  mutate(
    subject = subject %>% fct_inorder(),
    grade   = grade %>% fct_inorder(),
    sex     = sex %>% fct_inorder()
    ) %>% 
  arrange(subject, time) %>% 
  unite(combi, 2, 1, 3, sep = ",") %>% 
  spread(1, 4) %>% 
  arrange(desc(time)) %>% 
  filter(time >= year(Sys.time()) - 5)

vec       <- UDXTKK %>% select(-(1:2)) %>% colnames() %>% str_split(",") %>% unlist()
head_vec1 <- rep((vec[c(F, T, F)])[1:8] %>% table(), 2)
head_vec2 <- vec[c(T, F, F)] %>% table()
col_vec   <- vec[c(F, F, T)] 

# Table
UDXTKK %>% 
  select(-1) %>% 
  rename(" " = 1) %>% 
  mutate_all(~replace(., is.na(.), 0)) %>% 
  statgl_table(col.names = c(" ", col_vec),
               replace_0s = TRUE) %>% 
  add_header_above(c(" ", head_vec1)) %>% 
  add_header_above(c(" ", head_vec2)) %>% 
  pack_rows(index = UDXTKK[["unit"]] %>% table())
3rd grade
7th grade
Danish
English
Greenlandic
Mathematics
Danish
English
Greenlandic
Mathematics
3rd grade,Danish,Boys 3rd grade,Danish,Girls 3rd grade,English,Boys 3rd grade,English,Girls 3rd grade,Greenlandic,Boys 3rd grade,Greenlandic,Girls 3rd grade,Mathematics,Boys 3rd grade,Mathematics,Girls 7th grade,Danish,Boys 7th grade,Danish,Girls 7th grade,English,Boys 7th grade,English,Girls 7th grade,Greenlandic,Boys 7th grade,Greenlandic,Girls 7th grade,Mathematics,Boys 7th grade,Mathematics,Girls
Problem-solving proficiency (pct. correct)
2024 39 43 0 0 43 48 51 46 41 45 80 88 50 59 41 38
2023 45 48 0 0 48 48 56 48 42 50 82 90 54 64 41 42
2022 39 44 0 0 40 43 48 48 44 59 75 86 57 66 41 41
2021 46 48 0 0 45 50 53 49 47 59 71 76 54 66 41 38

Grade point average in lower secondary education


GS Marks by gender
# Import
UDXFKK_raw <-
  statgl_url("UDXFKK", lang = language) %>% 
  statgl_fetch(unit             = "andel",
               grade            = "FO",
               subject          = c("01", "02", "03", "04"),
               "type of grades" = 56:58,
               sex              = 1:2,
               time             = px_all(),
               .col_code = TRUE) %>% 
    as_tibble()

# Transform
UDXFKK <-
  UDXFKK_raw %>% 
  separate(`type of grades`, c("split1", "split2"),  " - ") %>% 
  mutate(split2 = split2 %>% str_to_title(),
         split1 = split1 %>% str_to_lower(),
         time = time %>% make_date()) %>% 
  unite(combi, 2, 4, sep = ", ")

fig_title    <- (statgl_url("UDXFKK", lang = language) %>% statgl_meta())$title
fig_y        <- UDXFKK[["unit"]] %>% unique() %>% str_to_title()
fig_subtitle <- UDXFKK[["combi"]] %>% unique()

# Plot
UDXFKK %>% 
  ggplot(aes(
    x     = time,
    y     = value, 
    color = sex
    )) +
  geom_line(size = 1.5) +
  facet_grid(split2 ~ subject) +
  scale_y_continuous(labels = scales::unit_format(
    suffix       = " ",
    big.mark     = ".",
    decimal.mark = ",", 
    accuracy     = 1
    )) +
  theme_statgl() + 
  scale_color_statgl(guide = guide_legend(reverse = TRUE)) +
  labs(
    title    = fig_title,
    subtitle = fig_subtitle,
    x        = " ",
    y        = fig_y,
    color    = " ",
    caption  = sdg5$figs$fig5$cap[language]
  )

StatBank

Method


# Transform
UDXFKK <-
  UDXFKK_raw %>% 
  filter(time >= year(Sys.Date()) - 6,
         value != "NA") %>% 
  separate(`type of grades`, c("split1", "split2"),  " - ") %>% 
  mutate(split2 = split2 %>% str_to_title(),
         split1 = split1 %>% str_to_lower()) %>% 
  unite(combi1, 2, 4, sep = ", ") %>% 
  unite(combi2, 3, 4, sep = ",") %>% 
  spread(3, ncol(.)) %>% 
  arrange(desc(time))

vec      <- UDXFKK %>% select(-(1:4)) %>% colnames() %>% str_split(",") %>% unlist()
head_vec <- vec[c(T, F)] %>% table()
col_vec  <- vec[c(F, T)]

# Table
UDXFKK %>% 
  select(-(1:2), -4) %>% 
  rename(" " = 1) %>% 
  statgl_table(col.names = c(" ", col_vec)) %>% 
  add_header_above(c(" ", head_vec)) %>% 
  pack_rows(index = UDXFKK[[1]] %>% str_to_title() %>% table()) %>% 
  pack_rows(index = UDXFKK[["time"]] %>% table() %>% rev()) %>% 
  add_footnote(UDXFKK[[2]] %>% unique(),
               notation = "symbol")
Danish
English
Greenlandic
Mathematics
Danish,Oral Danish,Proficiency Test Danish,Written English,Oral English,Proficiency Test English,Written Greenlandic,Oral Greenlandic,Proficiency Test Greenlandic,Written Mathematics,Oral Mathematics,Proficiency Test Mathematics,Written
Grade Point Average
2024
Boys 4,30 3,36 2,79 7,90 5,54 5,10 6,11 4,15 4,45 5,47 5,11 2,55
Girls 5,00 4,05 3,58 7,16 5,73 5,58 7,47 5,57 6,14 5,74 4,51 2,41
2023
Boys 6,16 3,92 3,39 6,60 5,60 4,39 6,30 3,50 3,84 5,81 5,14 2,89
Girls 6,13 4,18 4,28 7,34 5,52 4,73 6,74 4,49 5,65 5,37 4,49 3,07
2022
Boys 3,86 3,43 2,78 6,27 4,76 3,82 5,87 3,37 4,60 5,26 4,95 2,41
Girls 5,55 4,71 4,22 6,74 5,55 5,07 7,49 3,98 6,18 5,22 4,84 2,61
2021
Boys 4,89 3,93 2,59 6,66 4,73 3,75 5,67 3,11 4,18 4,79 5,06 2,16
Girls 5,74 4,93 4,00 6,36 5,03 4,40 6,21 3,94 6,31 4,94 4,84 2,17
* School leavers - lower secondary education, mark


Due to Covid-19 there has not been held final exams in 2020.

Highest educational attainment


GS Highest educational attainment among 35-39 year olds by gender
# Import
UDXISCPROD_raw <-
  statgl_url("UDXISCPROD", lang = language) %>% 
  statgl_fetch(
    ISCED11_level = px_all(),
    Sex           = px_all(),
    Aar           = px_all(),
    alder_grp     = "35-39",
    .col_code     = TRUE
    ) %>% 
  as_tibble()

# Transform
UDXISCPROD <-
  UDXISCPROD_raw %>% 
  filter(ISCED11_level != UDXISCPROD_raw[[2]][1]) %>% 
  mutate(
    ISCED11_level = ISCED11_level %>% factor(level = unique(ISCED11_level) %>% rev()),
    Aar           = Aar %>% make_date()
    )

# Plot
UDXISCPROD %>% 
  arrange(ISCED11_level) %>% 
  ggplot(aes(
    x    = Aar,
    y    = value,
    fill = ISCED11_level
  )) +
  geom_area(position = "fill") +
  facet_wrap(~ Sex) +
  scale_y_continuous(labels = scales::percent_format(
    scale        = 100, 
    accuracy     = 1, 
    big.mark     = ".",
    decimal.mark = ","
    )) +
  theme_statgl(base_size = 11) +
  scale_fill_statgl(reverse = TRUE, guide = guide_legend(reverse = TRUE, nrow = 3)) +
  labs(
    title    = sdg5$figs$fig6$title[language],
    subtitle = unique(UDXISCPROD[["age"]]),
    x        = " ",
    y        = " ",
    fill     = NULL,
    caption  = sdg5$figs$fig6$cap[language]
  )

StatBank

Method


UDXISCPROD <- 
  UDXISCPROD_raw %>% 
  filter(
    ISCED11_level != UDXISCPROD_raw[[2]][1],
    Aar > year(Sys.Date()) - 7
    ) %>% 
  mutate(
    ISCED11_level = ISCED11_level %>% factor(levels = unique(ISCED11_level))
    ) %>% 
  arrange(ISCED11_level, desc(Aar)) %>% 
  unite(combi, 3, 4, sep = "-") %>% 
  mutate(combi = combi %>% factor(level = unique(combi))) %>% 
  spread(3, 4, sep = "-")

vec      <- (UDXISCPROD %>% select(-(1:2)) %>% colnames() %>% str_split("-") %>% unlist())[c(F, T, T)]
head_vec <- vec[c(F, T)] %>% table() %>% rev()
col_vec  <- vec[c(T, F)]

UDXISCPROD %>% 
  select(-1) %>% 
  rename(" " = 1) %>% 
  statgl_table(replace_0s = TRUE, col.names = c(" ", col_vec)) %>% 
  add_header_above(c(" ", head_vec)) %>% 
  pack_rows(index = UDXISCPROD[["alder_grp"]] %>% table())
2024
2023
2022
2021
2020
combi-Women-2024 combi-Men-2024 combi-Women-2023 combi-Men-2023 combi-Women-2022 combi-Men-2022 combi-Women-2021 combi-Men-2021 combi-Women-2020 combi-Men-2020
35-39 years
Lower secondary education 783 1.228 705 1.199 655 1.125 627 1.068 631 1.037
Upper secondary education 117 99 112 84 104 79 105 70 91 63
Vocational education and training 619 686 611 678 583 658 584 697 601 688
Supplementary examination courses 41 48 37 43 37 32 32 26 30 23
Short-cycle higher education 106 98 96 81 84 75 88 70 87 76
Bachelors programme 43 17 41 15 41 17 35 13 35 13
Professional bachelors programme 347 109 332 111 320 114 320 98 301 94
Masters programme 119 69 109 70 111 68 105 68 86 70
Phd. Programmes 8 3 8 4 6 3 6 3 6 1

Employment


GS Main employment for permanent residents by industry and gender
ARXBFB01_raw <-
  statgl_url("ARXBFB01", lang = language) |> 
  statgl_fetch(
    beskbrch  = c("01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16"),
    sex       = c("M","K"),
    opg_var   = "G",
    aar       = px_all(),
    .col_code = T
  ) |> 
  as_tibble()

# Transform
ARXBFB01 <-
  ARXBFB01_raw %>% 
  mutate(
    aar     = aar %>% make_date(),
    beskbrch = beskbrch %>% fct_reorder(value) %>% fct_rev()
    ) %>% 
  arrange(beskbrch)

# Plot
ARXBFB01 %>% 
  ggplot(aes(
    x    = aar,
    y    = value,
    fill = sex
    )) +
  geom_area() +
  facet_wrap(~ beskbrch, scales = "free", labeller = label_wrap_gen()) +
  theme_statgl(base_size = 8) + 
  scale_fill_statgl(reverse = TRUE) +
  scale_y_continuous(labels = scales::unit_format(
    suffix       = " ",
    big.mark     = ".",
    decimal.mark = ","
    )) +
    labs(
      title = unique(ARXBFB01[[4]]),
      subtitle = sdg5$figs$fig7$title[language],
      x        = " ",
      y        = sdg5$figs$fig7$y_lab[language],
      fill     = " ",
      caption  = sdg5$figs$fig7$cap[language]
      )

StatBank

Method


ARXBFB01 <- 
  ARXBFB01_raw %>% 
  filter(aar >= year(Sys.time()) - 6) %>% 
  mutate(beskbrch = beskbrch %>% fct_reorder(value) %>% fct_rev()) %>% 
  arrange(beskbrch, aar) %>% 
  unite(combi, 2, 3, sep = ",") %>% 
  mutate(combi = combi %>% factor(levels = unique(combi))) %>% 
  spread(2, ncol(.))

vec      <- ARXBFB01 %>% select(-(1:2)) %>% colnames() %>% str_split(",") %>% unlist()
head_vec <- vec[c(F, T)] %>% table()
col_vec  <- vec[c(T, F)]

ARXBFB01 %>% 
  select(-2) %>% 
  rename(" " = 1) %>% 
  statgl_table(col.names = c(" ", col_vec)) %>% 
  add_header_above(c(" ", head_vec)) %>% 
  pack_rows(index = ARXBFB01[[2]] %>% table())
2020
2021
2022
2023
2024
Men,2020 Women,2020 Men,2021 Women,2021 Men,2022 Women,2022 Men,2023 Women,2023 Men,2024 Women,2024
Number of main employed persons in average per month
Public administration and service 3.883 8.858 3.966 8.931 3.929 8.929 3.817 8.919 3.863 8.973
Fishing and other related industries 3.862 708 3.662 669 3.655 658 3.799 683 3.677 649
Wholesale and retail trade 1.494 1.425 1.533 1.496 1.552 1.530 1.575 1.508 1.608 1.506
Construction 1.865 178 2.103 206 2.129 204 2.080 195 1.998 187
Transportation and storage 1.546 460 1.514 448 1.563 484 1.596 495 1.568 500
Accommodation and food service activities 317 356 360 436 376 480 423 510 436 486
Information and communication 422 197 415 197 382 186 375 184 359 174
Administrative and support service activities 272 160 246 149 234 154 241 175 267 201
Energy and watersupply 361 77 361 77 348 69 353 71 359 72
Other service industries 154 151 158 149 156 155 155 165 143 172
Professional, scientific and technical activities 158 109 173 116 177 123 179 120 166 115
Real estate activities 152 104 143 98 139 112 155 121 136 120
Financial and insurance activities 75 129 76 131 78 140 84 145 109 196
Manufacturing 185 50 189 49 195 52 193 59 176 52
Mining and quarrying 65 25 85 34 73 34 56 29 59 34
Agriculture, forestry and related industries 85 19 92 18 80 18 68 15 70 15

Unemployment


GS Unemployment rate by gender
# Import

url <- paste0("https://bank.stat.gl/api/v1/", language, "/Greenland/AR/AR40/ARXLED3.px")

ARXLED3_raw <-
  statgl_url("ARXLED3", lang = language) |> 
  statgl_fetch(
    sex       = c("M", "K"),
    alder_grp = px_all(),
    aar       = px_all(),
    opg_var   = "P",
    .col_code = T
  ) |> 
  as_tibble()

# Transform
ARXLED3 <-
  ARXLED3_raw %>% 
  mutate(
    aar = aar %>% make_date(),
    alder_grp  = alder_grp %>% factor(levels = unique(alder_grp))
    )

# Plot
ARXLED3 %>% 
  ggplot(aes(
    x     = aar, 
    y     = value,
    color = sex
    )) +
  geom_line(size = 1.5) +
  facet_wrap(~ alder_grp, scales = "free") +
  theme_statgl() + scale_color_statgl(reverse = TRUE) +
  scale_y_continuous(labels  = scales::percent_format(
    scale        = 1,
    accuracy     = 1,
    big.mark     = ".",
    decimal.mark = ",")) +
  labs(
    title    = sdg5$figs$fig8$title[language],
    subtitle = sdg5$figs$fig8$sub[language],
    x        = " ",
    y        = " ",
    color    = " ",
    caption  = sdg5$figs$fig8$cap[language]
    )

StatBank

Method


ARXLED3 <- 
  ARXLED3_raw %>% 
  select(-opg_var) |> 
  mutate(
    alder_grp = alder_grp %>% fct_inorder(),
    aar = aar %>% as.numeric()
    ) %>% 
  filter(aar > max(aar) - 5) %>% 
  arrange(alder_grp, aar) %>% 
  unite(combi, aar, sex, sep = ",") %>% 
  mutate(combi = combi %>% fct_inorder()) %>% 
  spread(combi, value)
  
vec      <- ARXLED3 %>% select(-1) %>% colnames() %>% str_split(",") %>% unlist()
head_vec <- vec[c(T, F)] %>% table()
col_vec  <- vec[c(F, T)]


ARXLED3 %>% 
  rename(" " = 1) %>% 
  statgl_table(col.names = c(" ", col_vec)) %>% 
  add_header_above(c(" ", head_vec)) %>% 
  row_spec(1, bold = TRUE) %>% 
  pack_rows(index = c("Ledighedsprocent" = ARXLED3[[1]] %>% length())) %>% 
  add_footnote(
    sdg5$figs$fig8$foot[language],
    notation = "symbol")
2020
2021
2022
2023
2024
2020,Men 2020,Women 2021,Men 2021,Women 2022,Men 2022,Women 2023,Men 2023,Women 2024,Men 2024,Women
Ledighedsprocent
Total 4,9 4,2 3,9 3,4 3,4 3,0 3,2 2,7 3,7 3,0
18-19 years 8,4 8,6 7,1 6,4 4,8 5,3 5,1 5,5 8,3 5,7
20-24 years 6,3 6,0 4,8 4,9 4,1 4,4 3,8 3,5 5,2 4,7
25-29 years 4,7 4,2 3,4 3,0 3,4 2,8 2,9 2,4 3,9 3,2
30-34 years 4,2 4,5 3,2 3,4 3,4 3,1 2,9 2,8 3,4 3,0
35-39 years 4,4 4,1 3,2 3,2 2,7 2,8 2,3 2,5 2,7 2,5
40-44 years 4,4 3,4 3,5 3,2 2,8 2,4 3,0 2,5 3,2 2,5
45-49 years 4,0 3,8 3,1 2,7 2,6 2,1 2,3 2,1 3,0 2,5
50-54 years 5,1 3,7 4,3 3,7 3,8 3,0 2,9 2,5 3,0 2,8
55-59 years 4,9 3,6 4,4 3,2 3,6 2,8 3,9 2,8 3,9 2,9
60 years-retirement age 5,3 2,7 4,1 2,9 3,9 3,0 3,8 2,9 3,8 2,3
* Percentage, average unemployment per month among residents aged 18-65

Life expectancy


GS Life expectancy for 0 and 1-year-olds by gender
# Import
BEXDT5A_raw <-
  statgl_url("BEXDT5A", lang = language) %>% 
  statgl_fetch(type   = "E",
               gender = c("M", "K"),
               time   = px_all(),
               age    = 0:1,
               .col_code = TRUE) %>% 
  as_tibble()

# Transform
BEXDT5A <- 
  BEXDT5A_raw %>% 
    separate(time, c("startar", "slutar"),  " - ") %>% 
  mutate(slutar = slutar %>% make_date())

# Plot
BEXDT5A %>% 
  ggplot(aes(
    x     = slutar,
    y     = value,
    color = gender
    )) +
  geom_line(size = 2) +
  facet_wrap(~ age) +
    theme_statgl() + 
  scale_color_statgl(reverse = TRUE) +
  theme(plot.margin = margin(10, 10, 10, 10)) +
  labs(
    title    = sdg5$figs$fig9$title[language],
    subtitle = sdg5$figs$fig9$sub[language],
    x        = sdg5$figs$fig9$x_lab[language],
    y        = sdg5$figs$fig9$y_lab[language],
    color    = " ",
    caption  = sdg5$figs$fig9$cap[language]
    )

StatBank


# Transform
BEXDT5A <-
  BEXDT5A_raw %>% 
  arrange(desc(time), age) %>% 
  unite(combi, 2, 3, sep = ",") %>% 
  mutate(combi = combi %>% factor(levels = unique(combi))) %>% 
  spread(2, 4) %>% 
  arrange(desc(time)) %>% 
  mutate(timetime = time) %>% 
  separate(timetime, c("time1", "time2"), " - ") %>% 
  filter(time >= year(Sys.time()) - 20) %>% 
  select(-c("time1", "time2"))

vec      <- BEXDT5A %>% select(-(1:2)) %>% colnames() %>% str_split(",") %>% unlist()
head_vec <- vec[c(F, T)] %>% table()
col_vec  <- vec[c(T, F)]

# Table
BEXDT5A %>% 
  select(-1) %>% 
  rename(" " = 1) %>% 
  statgl_table(col.names = c(" ", col_vec)) %>% 
  add_header_above(c(" ", head_vec)) %>% 
  pack_rows(index = BEXDT5A[[1]] %>% table()) %>% 
  add_footnote(
    sdg5$figs$fig9$foot[language], 
    notation = "symbol"
    )
0
1
Men,0 Women,0 Men,1 Women,1
Life Expectancy
2015 - 2019 68,3 73,0 68,1 72,5
2014 - 2018 68,8 73,0 68,6 72,3
2013 - 2017 68,6 73,1 68,4 72,4
2012 - 2016 68,4 73,4 68,2 72,8
2011 - 2015 68,5 72,6 68,3 72,1
2010 - 2014 68,0 72,1 67,8 71,5
2009 - 2013 67,4 72,2 67,1 71,6
2008 - 2012 67,3 71,9 67,0 71,3
2007 - 2011 67,0 71,5 66,7 71,0
2006 - 2010 66,6 71,5 66,4 71,1
* Life expectancy for 0 and 1-year-olds, persons born in Greenland.


Maternity benefits

FN 5.4.1
# Import
SOX007_raw <- 
  statgl_url("SOX007", lang = language) |> 
  statgl_fetch(
    gender    = 1:2,
    type      = 30,
    time      = px_all(),
    .col_code = T
  ) |> 
  as_tibble()

# Transform
SOX007 <- 
  SOX007_raw |> 
  mutate(value = as.numeric(value)) |> 
  select(-2)


# Plot
SOX007 |> 
  ggplot(aes(
    x     = as.integer(time),
    y     = value,
    color = gender
  )) +
  geom_line(size = 2) +
  theme_statgl() +
  scale_color_statgl() +
  labs(
    title   = sdg5$figs$fig10$title[language],
    x       = " ",
    y       = " ",
    color   = " ",
    caption = sdg5$figs$fig10$cap[language]
  )

StatBank


SOX007 |> 
  filter(time >= year(Sys.time()) - 6) |> 
  spread(time, value) |> 
  rename(" " = 1) |> 
  statgl_table() |> 
  add_footnote(sdg5$figs$fig10$foot[language], notation = "symbol")
2020 2021 2022 2023
Man 165 148 128 94
Woman 867 834 718 625
* Number of persons