Consommation effective des ménages par produit

Data - INSEE

Info

LAST_DOWNLOAD

LAST_DOWNLOAD
2021-12-02

LAST_COMPILE

LAST_COMPILE
2024-12-22

Last

Code
`conso-eff-produit` %>%
  group_by(year) %>%
  summarise(Nobs = n()) %>%
  arrange(desc(year)) %>%
  head(1) %>%
  print_table_conditional()
year Nobs
2020 3906

Sources

  • Comptes de la Nation 2020 - Consommation. html

  • Comptes de la Nation 2019 - Consommation. html

Info

Les tableaux détaillés présentent la consommation effective des ménages depuis 1959 jusqu’à l’année du compte provisoire, déclinée aux niveaux diffusables les plus fins des nomenclatures de produits (Nomenclature agrégée), de fonction (COICOP) et de durabilité.

Pour chaque nomenclature (produit, fonction durabilité), les résultats détaillés ont le format suivant :

  1. Séries en niveau :
    • Consommation aux prix courants (onglet M€cour), que l’on appelle aussi “en valeur” ou “en euros courants”
    • Consommation en volume aux prix de l’année précédente chaînés (onglet M€2014), que l’on appelle aussi ““en volume”” ou en ““euros 2014”“. Les consommations en volume au prix de l’année précédente chaînée ne sont pas sommables. En conséquence, la somme des consommations en volume aux prix de l’année précédente chaîné des séries élémentaires constituant un niveau diffère de la consommation pour le niveau total de l’agrégat.
    • Indices de prix base 100 en 2014 (onglet Iprix2014)
  2. Séries en évolution n/n-1 :
    • Indices de valeur base 100 l’année précédente (onglet Ival)
    • Indices de volume base 100 l’année précédente (onglet Ivol)
    • Indices de prix base 100 l’année précédente (onglet Iprix)
  3. Structure des séries :
    • Coefficients budgétaires aux prix courants en % (onglet Coeffcour)

variable

Code
`conso-eff-produit` %>%
  group_by(variable) %>%
  summarise(Nobs = n()) %>%
  print_table_conditional()
variable Nobs
Coeffcour 40052
Iprix2014 40424
Ival 39772
Ivol 39772
M€2014 40424
M€cour 40424

sector, Sector

All

Code
`conso-eff-produit` %>%
  group_by(line, sector, Sector, Example) %>%
  summarise(Nobs = n()) %>%
  print_table_conditional()

A17

Code
`conso-eff-produit` %>%
  group_by(sector, Sector, Example) %>%
  filter(grepl("A17", sector)) %>%
  summarise(Nobs = n()) %>%
  print_table_conditional()
sector Sector Example Nobs
A17.AZ Agriculture, sylviculture et pêche NA 370
A17.C1 Fabric. denrées alimentaires, boissons et prdts à base de tabac NA 370
A17.C2 Cokéfaction et raffinage NA 370
A17.C3 Fabrication d'équipements électriques, électroniques, informatiques - fabrication de machines NA 370
A17.C4 Fabrication de matériels de transport NA 370
A17.C5 Fabrication d'autres produits industriels NA 370
A17.DE Industries extractives, énergie, eau, gestion des déchets et dépollution NA 370
A17.FZ Construction Petit entretien et réparation du logement à la charge de l'occupant 370
A17.GZ Commerce - réparation d'automobiles et de motocycles NA 370
A17.HZ Transports et entreposage NA 370
A17.IZ Hébergement et restauration NA 370
A17.JZ Information et communication NA 370
A17.KZ Activités financières et d'assurance NA 370
A17.LZ Activités immobilières NA 370
A17.MN Activités spécialisées, scientifiques et techniques et activités de services administratifs et de soutien NA 370
A17.OQ Administration publique, enseignement, santé humaine et action sociale NA 370
A17.RU Autres activités de services NA 370

A38

Code
`conso-eff-produit` %>%
  group_by(sector, Sector, Example) %>%
  filter(grepl("A38", sector)) %>%
  summarise(Nobs = n()) %>%
  print_table_conditional()
sector Sector Example Nobs
A38.BZ Industries extractives Sel régénérant 370
A38.CB Fabrication de textiles, industries de l'habillement, du cuir et de la chaussure NA 370
A38.CC Travail du bois, industries du papier et imprimerie NA 370
A38.CE Industrie chimique NA 370
A38.CF Industrie pharmaceutique Médicaments et produits stupéfiants 370
A38.CG Fabrication de produits en caoutchouc et plastique, autres produits minéraux non métalliques NA 370
A38.CH Métallurgie et fabrication de produits métalliques sauf machines et équipements NA 370
A38.CI Fabrication de produits informatiques, électroniques et optiques NA 370
A38.CJ Fabrication d'équipements électriques NA 370
A38.CK Fabrication de machines et équipements nca NA 370
A38.CM Autres industries manufacturières - réparation et installation de machines et d'équipements NA 370
A38.DZ Production et distribution d'électricité, de gaz, de vapeur et d'air conditionné NA 370
A38.EZ Production et distribution d'eau ;assainissement, gestion des déchets et dépollution NA 370
A38.JA Édition, audiovisuel et diffusion NA 370
A38.JB Télécommunications NA 370
A38.JC Activités informatiques et services d'information NA 370
A38.MA Activités juridiques, comptables, de gestion, architecture, ingénierie, contrôle et analyse technique NA 370
A38.MC Autres activités spécialisées, scientifiques et techniques Tirage et retouche de photographies 370
A38.NZ Activités de services administratifs et de soutien NA 370
A38.OZ Administration publique NA 370
A38.PZ Enseignement NA 370
A38.QA Activités pour la santé humaine NA 370
A38.QB Hébergement médico-social et social, action sociale sans hébergement NA 370
A38.RZ Arts, spectacles et activités récréatives NA 370
A38.SZ Autres activités de services NA 370
A38.TZ Activité des ménages en tant qu'employeurs et producteurs de biens et services pour usage propre NA 370

A88

Code
`conso-eff-produit` %>%
  group_by(sector, Sector, Example) %>%
  filter(grepl("A88", sector)) %>%
  summarise(Nobs = n()) %>%
  print_table_conditional()

year

Code
`conso-eff-produit` %>%
  group_by(year) %>%
  summarise(Nobs = n()) %>%
  arrange(desc(year)) %>%
  print_table_conditional()

2019

Désordonné

Code
`conso-eff-produit` %>%
  year_to_date2 %>%
  left_join(gdp, by = "date") %>%
  filter(date == as.Date("2019-01-01"),
         variable == "M€cour") %>%
  select(-date) %>%
  mutate(`% du PIB` = (100*value/(gdp)) %>% round(., digits = 2),
         value = round(value)) %>%
  select(-gdp, -variable) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

Ordonné

Code
`conso-eff-produit` %>%
  year_to_date2 %>%
  left_join(gdp, by = "date") %>%
  filter(date == as.Date("2019-01-01"),
         variable == "M€cour") %>%
  select(-date) %>%
  arrange(-value) %>%
  mutate(`% du PIB` = (100*value/(gdp)) %>% round(., digits = 2),
         value = round(value)) %>%
  select(-gdp, -variable) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

2020

Désordonné

Code
`conso-eff-produit` %>%
  year_to_date2 %>%
  left_join(gdp, by = "date") %>%
  filter(date == as.Date("2020-01-01"),
         variable == "M€cour") %>%
  select(-date) %>%
  mutate(`% du PIB` = (100*value/(gdp)) %>% round(., digits = 2),
         value = round(value)) %>%
  select(-gdp, -variable) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

Ordonné

Code
`conso-eff-produit` %>%
  year_to_date2 %>%
  left_join(gdp, by = "date") %>%
  filter(date == as.Date("2020-01-01"),
         variable == "M€cour") %>%
  select(-date) %>%
  arrange(-value) %>%
  mutate(`% du PIB` = (100*value/(gdp)) %>% round(., digits = 2),
         value = round(value)) %>%
  select(-gdp, -variable) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

% du PIB

Consommation

Code
`conso-eff-produit` %>%
  year_to_date2() %>%
  filter(sector %in% c("HC10G1A", "HI56Z3", "HC10E1G"),
         variable == "M€cour") %>%
  left_join(gdp, by = "date") %>%
  ggplot(.) + theme_minimal() + ylab("Consommation (% du PIB)") + xlab("") +
  geom_line(aes(x = date, y = value/(gdp), color = Sector)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.7, 0.91)) +
  scale_x_date(breaks = seq(1950, 2020, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_y_continuous(breaks = 0.01*seq(0, 100, .1),
                     labels = scales::percent_format(accuracy = .1))

Fromages, Pain, Services des débits de boissons

Code
`conso-eff-produit` %>%
  year_to_date2() %>%
  filter(sector %in% c("HC10G1A", "HI56Z3", "HC10E1G"),
         variable == "M€cour") %>%
  left_join(gdp, by = "date") %>%
  ggplot(.) + theme_minimal() + ylab("Consommation (% du PIB)") + xlab("") +
  geom_line(aes(x = date, y = value/(gdp), color = Sector)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.7, 0.91)) +
  scale_x_date(breaks = seq(1950, 2020, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_y_log10(breaks = 0.01*seq(0, 100, 0.1),
                     labels = scales::percent_format(accuracy = 0.1))

Loyers réels, loyers imputés

Code
`conso-eff-produit` %>%
  year_to_date2() %>%
  filter(sector %in% c("GL68I", "GL68R", "HL68R1"),
         variable == "M€cour") %>%
  left_join(gdp, by = "date") %>%
  ggplot(.) + theme_minimal() + ylab("Consommation (% du PIB)") + xlab("") +
  geom_line(aes(x = date, y = value/(gdp), color = Sector)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.3, 0.91)) +
  scale_x_date(breaks = seq(1950, 2020, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_y_continuous(breaks = 0.01*seq(0, 100, 0.5),
                     labels = scales::percent_format(accuracy = 0.1))

Activités immobilières

Code
`conso-eff-produit` %>%
  year_to_date2() %>%
  filter(line %in% c(550, 551, 552),
         variable == "M€cour") %>%
  left_join(gdp, by = "date") %>%
  ggplot(.) + theme_minimal() + ylab("Consommation (% du PIB)") + xlab("") +
  geom_line(aes(x = date, y = value/(gdp), color = Sector)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.3, 0.91)) +
  scale_x_date(breaks = seq(1950, 2020, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_y_continuous(breaks = 0.01*seq(0, 100, 1),
                     labels = scales::percent_format(accuracy = 1))

Automobile

Code
`conso-eff-produit` %>%
  year_to_date2() %>%
  filter(sector %in% c("A88.29", "GC29A", "HC29A1"),
         variable == "M€cour") %>%
  left_join(gdp, by = "date") %>%
  ggplot(.) + theme_minimal() + ylab("Consommation (% du PIB)") + xlab("") +
  geom_line(aes(x = date, y = value/(gdp), color = Sector)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.4, 0.91)) +
  scale_x_date(breaks = seq(1950, 2020, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_y_continuous(breaks = 0.01*seq(0, 100, 0.2),
                     labels = scales::percent_format(accuracy = 0.1))

Fruits et Légumes

Code
`conso-eff-produit` %>%
  year_to_date2() %>%
  filter(sector %in% c("A88.01", "HA01S7", "HA01T1"),
         variable == "M€cour") %>%
  left_join(gdp, by = "date") %>%
  ggplot(.) + theme_minimal() + ylab("Consommation (% du PIB)") + xlab("") +
  geom_line(aes(x = date, y = value/(gdp), color = Sector)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.7, 0.85)) +
  scale_x_date(breaks = seq(1950, 2020, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_y_continuous(breaks = 0.01*seq(0, 100, 0.2),
                     labels = scales::percent_format(accuracy = 0.1))

Cafés, Bars, Restaurants

Code
`conso-eff-produit` %>%
  year_to_date2() %>%
  filter(sector %in% c("HI56Z1", "HI56Z2", "HI56Z3"),
         variable == "M€cour") %>%
  left_join(gdp, by = "date") %>%
  ggplot(.) + theme_minimal() + ylab("Consommation (% du PIB)") + xlab("") +
  geom_line(aes(x = date, y = value/(gdp), color = Sector)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.3, 0.85)) +
  scale_x_date(breaks = seq(1950, 2020, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_y_continuous(breaks = 0.01*seq(0, 100, 0.2),
                     labels = scales::percent_format(accuracy = 0.1))

Indices de Prix

Tous

Code
`conso-eff-produit` %>%
  filter(variable == "Iprix2014",
         year %in% c("1990", "2020")) %>%
  select(-variable) %>%
  spread(year, value) %>%
  mutate(`% / an` = round(100*((`2020`/`1990`)^(1/30)-1), 2)) %>%
  arrange(`% / an`) %>%
  print_table_conditional()

Activités immobilières

Code
`conso-eff-produit` %>%
  filter(variable == "Iprix2014") %>%
  year_to_date2 %>%
  filter(sector %in% c("A17.LZ",
                         "A17.FZ"))  %>%
  filter(date >= as.Date("1990-01-01")) %>%
  group_by(sector) %>%
  arrange(date) %>%
  mutate(value = 100*value/value[1]) %>%
  ggplot + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = value, color = Sector)) +
  scale_x_date(breaks = seq(1960, 2022, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_log10(breaks = seq(100, 300, 10)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.25, 0.9),
        legend.title = element_blank())

Téléphones mobiles

1990-

Code
`conso-eff-produit` %>%
  filter(variable == "Iprix2014") %>%
  year_to_date2 %>%
  filter(sector %in% c("HC26C0A", "GC26C", "GC26AB"))  %>%
  filter(date >= as.Date("1990-01-01")) %>%
  group_by(sector) %>%
  arrange(date) %>%
  mutate(value = 100*value/value[1]) %>%
  ggplot + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = value, color = Sector)) +
  scale_x_date(breaks = seq(1960, 2022, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_log10(breaks = c(1, 2, 5, 8, 10, 20, 30, 50, 80, 100)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.7, 0.9),
        legend.title = element_blank())

1996-

Code
`conso-eff-produit` %>%
  filter(variable == "Iprix2014") %>%
  year_to_date2 %>%
  filter(sector %in% c("HC26C0A", "GC26C", "GC26AB"))  %>%
  filter(date >= as.Date("1996-01-01")) %>%
  group_by(sector) %>%
  arrange(date) %>%
  mutate(value = 100*value/value[1]) %>%
  ggplot + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = value, color = Sector)) +
  scale_x_date(breaks = seq(1960, 2022, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_log10(breaks = c(1, 2, 5, 8, 10, 20, 30, 50, 80, 100)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.7, 0.9),
        legend.title = element_blank())