PIB et ses composants - Equilibre emplois-ressources - valeurs aux prix courants

Data - Insee

Info

source dataset .html .RData
insee t_pib_val 2025-05-18 2025-02-28
insee t_pib_vol 2025-05-18 2025-02-28

LAST_COMPILE

LAST_COMPILE
2025-05-24

Last

date Nobs
2024-10-01 15

Info

  • Comptes trimestriels. html

  • PIB et ses composantes. html

  • Secteurs et ses composantes. html

Table 2024T2 - valeur

Code
ig_b("insee", "t_pib_val")

Table 2024T2 - volume

Code
ig_b("insee", "t_pib_vol")

Sources

Code
ig_b("insee", "revpe234", "table1")

variable

Code
t_pib_val %>%
  left_join(variable, by = "variable") %>%
  group_by(variable, Variable1, Variable2) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional
variable Variable1 Variable2 Nobs
P3 Dépenses de consommation des : Total 304
P31G Dépenses de consommation des : APU (individual.) 304
P32G Dépenses de consommation des : APU (collectives) 304
P3M Dépenses de consommation des : ménages 304
P3P Dépenses de consommation des : ISBLSM 304
P51 FBCF des : Total 304
P51B FBCF des : entreprises financières 304
P51G FBCF des : APU 304
P51M FBCF des : ménages 304
P51P FBCF des : ISBLSM 304
P51S FBCF des : entreprises non financières 304
P54 Variations de stocks (*) NA 304
P6 Exportations NA 304
P7 Importations NA 304
PIB Produit intérieur brut NA 304

PIB

Code
t_pib_val %>%
  filter(variable == "PIB") %>%
  select(-variable) %>%
  print_table_conditional()

D’où vient la croissance depuis 2021-T2 ?

Log

Code
t_pib_val %>%
  filter(variable %in% c("P3M", "PIB", "P6", "P51", "P31G"),
         date >= as.Date("2021-04-01")) %>%
  left_join(variable) %>%
  group_by(variable) %>%
  arrange(date) %>%
  mutate(value = 100*value/value[1]) %>%
  mutate(Variable2 = ifelse(is.na(Variable2), "", Variable2)) %>%
  ggplot(.) + theme_minimal() + ylab("") + xlab("") +
  geom_line(aes(x = date, y = value, color = paste(Variable1,  Variable2))) +
  theme(legend.title = element_blank(),
        legend.position = c(0.3, 0.7)) +
  scale_x_date(breaks = seq(1950, 2100, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_log10(breaks = seq(0, 1000, 5))

Consommation

All

Linear

Code
t_pib_val %>%
  filter(variable %in% c("P3M", "PIB", "P3")) %>%
  ggplot(.) + theme_minimal() + ylab("") + xlab("") +
  geom_line(aes(x = date, y = value, color = variable)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.3, 0.9)) +
  scale_x_date(breaks = seq(1950, 2100, 10) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0, 1000, 50))

Log

Code
t_pib_val %>%
  filter(variable %in% c("P3M", "PIB", "P3")) %>%
  ggplot(.) + theme_minimal() + ylab("") + xlab("") +
  geom_line(aes(x = date, y = value, color = variable)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.3, 0.9)) +
  scale_x_date(breaks = seq(1950, 2100, 10) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_log10(breaks = seq(0, 1000, 50))

2017-T2

Log

Code
t_pib_val %>%
  filter(variable %in% c("P3M", "PIB", "P3"),
         date >= as.Date("2017-04-01")) %>%
  group_by(variable) %>%
  arrange(date) %>%
  mutate(value = 100*value/value[1]) %>%
  ggplot(.) + theme_minimal() + ylab("") + xlab("") +
  geom_line(aes(x = date, y = value, color = variable)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.3, 0.9)) +
  scale_x_date(breaks = seq(1950, 2100, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_log10(breaks = seq(0, 1000, 5))

Investissement et taux de marge

All

Code
t_pib_val %>%
  filter(variable %in% c("P51", "PIB")) %>%
  spread(variable, value) %>%
  mutate(date,
         value = P51/PIB,
         Variable = "Investissement (% du PIB)") %>%
  bind_rows(t_txmargesnf_val %>%
              filter(variable == "taux_marge") %>%
              mutate(Variable = "Taux de marge") %>%
              mutate(value = value/100)) %>%
  ggplot(.) + theme_minimal() + ylab("") + xlab("") +
  geom_line(aes(x = date, y = value, color = Variable)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.3, 0.9)) +
  scale_x_date(breaks = seq(1950, 2100, 10) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_y_continuous(breaks = 0.01*seq(0, 100, 1),
                     labels = scales::percent_format(accuracy = 1)) + 
    geom_rect(data = data_frame(start = as.Date("1983-01-01"), 
                                end = as.Date("1992-12-31")), 
              aes(xmin = start, xmax = end, ymin = -Inf, ymax = +Inf), 
              fill = viridis(4)[4], alpha = 0.2)

1960-

Code
t_pib_val %>%
  filter(variable %in% c("P51", "PIB")) %>%
  spread(variable, value) %>%
  mutate(date,
         value = P51/PIB,
         Variable = "Investissement (% du PIB)") %>%
  bind_rows(t_txmargesnf_val %>%
              filter(variable == "taux_marge") %>%
              mutate(Variable = "Taux de marge") %>%
              mutate(value = value/100)) %>%
  filter(date >= as.Date("1960-01-01")) %>%
  ggplot(.) + theme_minimal() + ylab("") + xlab("") +
  geom_line(aes(x = date, y = value, color = Variable)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.9)) +
  scale_x_date(breaks = seq(1950, 2100, 10) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_y_continuous(breaks = 0.01*seq(0, 100, 1),
                     labels = scales::percent_format(accuracy = 1)) + 
    geom_rect(data = data_frame(start = as.Date("1983-01-01"), 
                                end = as.Date("1992-12-31")), 
              aes(xmin = start, xmax = end, ymin = -Inf, ymax = +Inf), 
              fill = viridis(4)[4], alpha = 0.2)

1980-

Code
t_pib_val %>%
  filter(variable %in% c("P51", "PIB")) %>%
  spread(variable, value) %>%
  mutate(date,
         value = P51/PIB,
         Variable = "Investissement (% du PIB)") %>%
  bind_rows(t_txmargesnf_val %>%
              filter(variable == "taux_marge") %>%
              mutate(Variable = "Taux de marge") %>%
              mutate(value = value/100)) %>%
  filter(date >= as.Date("1980-01-01")) %>%
  ggplot(.) + theme_minimal() + ylab("") + xlab("") +
  geom_line(aes(x = date, y = value, color = Variable)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.92)) +
  scale_x_date(breaks = seq(1950, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_y_continuous(breaks = 0.01*seq(0, 100, 1),
                     labels = scales::percent_format(accuracy = 1)) + 
    geom_rect(data = data_frame(start = as.Date("1983-01-01"), 
                                end = as.Date("1992-12-31")), 
              aes(xmin = start, xmax = end, ymin = -Inf, ymax = +Inf), 
              fill = viridis(4)[4], alpha = 0.2)

2000-

Code
t_pib_val %>%
  filter(variable %in% c("P51", "PIB")) %>%
  spread(variable, value) %>%
  mutate(date,
         value = P51/PIB,
         Variable = "Investissement (% du PIB)") %>%
  bind_rows(t_txmargesnf_val %>%
              filter(variable == "taux_marge") %>%
              mutate(Variable = "Taux de marge") %>%
              mutate(value = value/100)) %>%
  filter(date >= as.Date("2000-01-01")) %>%
  ggplot(.) + theme_minimal() + ylab("") + xlab("") +
  geom_line(aes(x = date, y = value, color = Variable)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.3, 0.9)) +
  scale_x_date(breaks = seq(1950, 2100, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_y_continuous(breaks = 0.01*seq(0, 100, 1),
                     labels = scales::percent_format(accuracy = 1))