Enquêtes de Conjoncture Nationales - CONJ

Données - BDF

🇬🇧 English version

Structure

Indicateurs du climat des affaires

Les indicateurs synthétiques du climat des affaires résument, pour chaque secteur, les réponses des chefs d’entreprise aux enquêtes de conjoncture de la Banque de France. Ils sont construits de façon à avoir une moyenne de longue période égale à 100 : au-dessus de 100, l’opinion des industriels est plus favorable qu’en moyenne longue.

Industrie, bâtiment, services marchands

Code
CONJ |>
  
  filter(variable %in% c("CONJ.M.N01.S.IN.000CZ.ICA00000.10",
                          "CONJ.M.N01.S.SM.00NAT.ICA00000.10",
                          "CONJ.M.N01.S.BA.00NAT.ICA00000.10")) |>
  mutate(Variable = case_when(
    ENQCNJ_TYPE_ENQ == "IN" ~ "Industrie manufacturière",
    ENQCNJ_TYPE_ENQ == "SM" ~ "Services marchands",
    ENQCNJ_TYPE_ENQ == "BA" ~ "Bâtiment",
    TRUE ~ Variable)) |>
  na.omit() |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) +
  geom_hline(yintercept = 100, linetype = "dashed", color = "black") +
  xlab("") + ylab("") + theme_minimal() +
  scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0, 150, 10)) +
  theme(legend.position = c(0.25, 0.15),
        legend.title = element_blank(),
        legend.direction = "vertical")

Depuis 5 ans

Code
CONJ |>
  
  filter(variable %in% c("CONJ.M.N01.S.IN.000CZ.ICA00000.10",
                          "CONJ.M.N01.S.SM.00NAT.ICA00000.10",
                          "CONJ.M.N01.S.BA.00NAT.ICA00000.10")) |>
  mutate(Variable = case_when(
    ENQCNJ_TYPE_ENQ == "IN" ~ "Industrie manufacturière",
    ENQCNJ_TYPE_ENQ == "SM" ~ "Services marchands",
    ENQCNJ_TYPE_ENQ == "BA" ~ "Bâtiment",
    TRUE ~ Variable)) |>
  na.omit() |>
  filter(date >= max(date) - years(5)) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) +
  geom_hline(yintercept = 100, linetype = "dashed", color = "black") +
  xlab("") + ylab("") + theme_minimal() +
  scale_x_date(breaks = "6 months",
               labels = date_format("%b %Y")) +
  scale_y_continuous(breaks = seq(0, 150, 5)) +
  theme(legend.position = c(0.25, 0.15),
        legend.title = element_blank(),
        legend.direction = "vertical",
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))

Dernier point

Code
CONJ |>
  
  filter(variable %in% c("CONJ.M.N01.S.IN.000CZ.ICA00000.10",
                          "CONJ.M.N01.S.SM.00NAT.ICA00000.10",
                          "CONJ.M.N01.S.BA.00NAT.ICA00000.10")) |>
  mutate(Variable = case_when(
    ENQCNJ_TYPE_ENQ == "IN" ~ "Industrie manufacturière",
    ENQCNJ_TYPE_ENQ == "SM" ~ "Services marchands",
    ENQCNJ_TYPE_ENQ == "BA" ~ "Bâtiment",
    TRUE ~ Variable)) |>
  na.omit() |>
  group_by(Variable) |>
  filter(date == max(date)) |>
  ungroup() |>
  select(Secteur = Variable, date, value) |>
  arrange(desc(value)) |>
  print_table_conditional()
Secteur date value
Industrie manufacturière 2026-07-31 99
Services marchands 2026-07-31 95
Bâtiment 2026-07-31 95