Comptes des secteurs institutionnels - CNA-2014-CSI

Données - INSEE

Last observation: 2022 (N = 5)

First observation: 1949 (N = 797)

Last data update: 03 sept. 2026, 23:28

Last compile: 04 sept. 2026, 01:48

Structure

Compte d’exploitation

Code
i_g("bib/insee/compte-d-exploitation.png")

Données reliées

  • 2.101 – Revenu disponible brut des ménages et évolution du pouvoir d’achat par personne, par ménage et par unité de consommation (En milliards d’euros et %) - t_2101. html
  • 2.104 – Compte des ménages simplifié et ratios d’épargne (En milliards d’euros et %) - t_2104. html
  • 2.104 – Compte des ménages simplifié et ratios d’épargne (En milliards d’euros et %) - t_2104_2018. html
  • 7.401 – Compte des ménages (S14) (En milliards d’euros) - t_7401. html
  • Comptes des secteurs institutionnels - CNA-2014-CSI. html

Revenu des ménages

D1, D4

Code
`CNA-2014-CSI` |>
  filter(`SECT-INST` == "S14",
         UNIT_MEASURE == "EUROS_COURANTS",
         OPERATION %in% c("D1", "D4")) %>%
  select_if(~ n_distinct(.) > 1) |>
  
  
  year_to_date() |>
  left_join(gdp, by = "date") |>
  ggplot() + geom_line(aes(x = date, y = OBS_VALUE/gdp, color = paste0(OPERATION, " - ", COMPTE))) + 
  theme_minimal() +  xlab("") + ylab("") +
  
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.6, 0.6),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = 0.01*seq(0, 2000, 5),
                     labels = percent_format(acc = 1))

D63, D631_2010 - Transferts sociaux

All

Code
`CNA-2014-CSI` |>
  filter(`SECT-INST` == "S14",
         UNIT_MEASURE == "EUROS_COURANTS",
         OPERATION %in% c("D63", "D631_2010")) |>
  
  
  year_to_date() |>
  left_join(gdp, by = "date") |>
  ggplot() + geom_line(aes(x = date, y = OBS_VALUE/gdp, color = OPERATION)) + 
  theme_minimal() +  xlab("") + ylab("") +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.35, 0.9),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = 0.01*seq(0, 2000, 1),
                     labels = percent_format(acc = 1))

1995-

Code
`CNA-2014-CSI` |>
  filter(`SECT-INST` == "S14",
         UNIT_MEASURE == "EUROS_COURANTS",
         OPERATION %in% c("D63", "D631_2010")) |>
  
  
  year_to_date() |>
  filter(date >= as.Date("1995-01-01")) |>
  left_join(gdp, by = "date") |>
  ggplot() + geom_line(aes(x = date, y = OBS_VALUE/gdp, color = OPERATION)) + 
  theme_minimal() +  xlab("") + ylab("") +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.9),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = 0.01*seq(0, 2000, 1),
                     labels = percent_format(acc = 1))

D5, D4

Code
`CNA-2014-CSI` |>
  filter(`SECT-INST` == "S14",
         UNIT_MEASURE == "EUROS_COURANTS",
         OPERATION %in% c("D5")) |>
  
  
  year_to_date() |>
  left_join(gdp, by = "date") |>
  ggplot() + geom_line(aes(x = date, y = OBS_VALUE/gdp, color = paste0(OPERATION, " - ", COMPTE))) + 
  theme_minimal() +  xlab("") + ylab("") +
  
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.6, 0.6),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = 0.01*seq(0, 2000, 1),
                     labels = percent_format(acc = 1))

B6G, B6N, B7G, B7N

All

Code
`CNA-2014-CSI` |>
  filter(`SECT-INST` == "S14",
         UNIT_MEASURE == "EUROS_COURANTS",
         OPERATION %in% c("B6G", "B6N", "B7G", "B7N"),
         COMPTE == "EA") |>
  
  
  year_to_date() |>
  left_join(gdp, by = "date") |>
  ggplot() + geom_line(aes(x = date, y = OBS_VALUE/gdp, color = paste0(OPERATION, " - ", COMPTE))) + 
  theme_minimal() +  xlab("") + ylab("") +
  
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.7, 0.5),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = 0.01*seq(0, 2000, 5),
                     labels = percent_format(acc = 1))

1995-

Code
`CNA-2014-CSI` |>
  filter(`SECT-INST` == "S14",
         UNIT_MEASURE == "EUROS_COURANTS",
         OPERATION %in% c("B6G", "B6N", "B7G", "B7N"),
         COMPTE == "EA") |>
  
  
  year_to_date() |>
  filter(date >= as.Date("1995-01-01")) |>
  left_join(gdp, by = "date") |>
  ggplot() + geom_line(aes(x = date, y = OBS_VALUE/gdp, color = paste0(OPERATION, " - ", COMPTE))) + 
  theme_minimal() +  xlab("") + ylab("") +
  
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.6, 0.5),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = 0.01*seq(0, 2000, 5),
                     labels = percent_format(acc = 1))

Valeur ajoutée brute

Mds €

Code
`CNA-2014-CSI` |>
  
  filter(`SECT-INST` %in% c("S11", "S12", "S14", "S13"),
         OPERATION %in% c("B1G")) |>
  year_to_date() |>
  select(date, `SECT-INST`, `SECT-INST`, OBS_VALUE, UNIT_MEASURE) |>
  ggplot() + geom_line(aes(x = date, y = OBS_VALUE/1000, color = `SECT-INST`)) + 
  theme_minimal() +  xlab("") + ylab("") +
  
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.35, 0.9),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = seq(0, 2000, 100),
                     labels = dollar_format(suffix = " Mds€", prefix = "", accuracy = 1))

% du PIB

Code
`CNA-2014-CSI` |>
  
  filter(`SECT-INST` %in% c("S11", "S12", "S14", "S13"),
         OPERATION %in% c("B1G")) |>
  year_to_date() |>
  left_join(gdp, by = "date") |>
  ggplot() + geom_line(aes(x = date, y = OBS_VALUE/gdp, color = `SECT-INST`)) + 
  theme_minimal() +  xlab("") + ylab("") +
  
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.75, 0.6),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = 0.01*seq(0, 2000, 5),
                     labels = percent_format(acc = 1))

Revenus de la propriété

Mds€

Code
`CNA-2014-CSI` |>
  
  
  filter(`SECT-INST` %in% c("S0"),
         OPERATION %in% c("D41", "D42", "D43", "D44")) |>
  year_to_date() |>
  ggplot() + geom_line(aes(x = date, y = OBS_VALUE/1000, color = OPERATION)) + 
  theme_minimal() +  xlab("") + ylab("") +
  
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.35, 0.9),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = seq(0, 2000, 100),
                     labels = dollar_format(suffix = " Mds€", prefix = "", accuracy = 1))

% du PIB

Code
`CNA-2014-CSI` |>
  
  
  filter(`SECT-INST` %in% c("S0"),
         OPERATION %in% c("D41", "D42", "D43", "D44")) |>
  year_to_date() |>
  left_join(gdp, by = "date") |>
  ggplot() + geom_line(aes(x = date, y = OBS_VALUE/gdp, color = OPERATION)) + 
  theme_minimal() +  xlab("") + ylab("") +
  
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.35, 0.9),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = 0.01*seq(0, 2000, 5),
                     labels = percent_format(acc = 1))

S11 - Sociétés non financières

D1/B1G - Rémunération des salariés

Code
`CNA-2014-CSI` |>
  filter(`SECT-INST` == "S11",
         OPERATION %in% c("D1", "B1G"),
         NATURE == "SO",
         INDICATEUR == "CNA_COMPTES_SI_EA") |>
  year_to_date() |>
  select(date, OBS_VALUE, OPERATION) |>
  spread(OPERATION, OBS_VALUE) |>
  ggplot() + geom_line(aes(x = date, y = D1/B1G)) + 
  theme_minimal() +  xlab("") + ylab("") +
  
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.35, 0.9),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = 0.01*seq(-2, 90, 1),
                     labels = scales::percent_format(accuracy = 1))