Indices des prix à la consommation - Résultats par regroupement de produits - IPC-1998

Data - INSEE

Info

source dataset Title .html .rData
insee IPC-1998 Indices des prix à la consommation - Résultats par regroupement de produits - IPC-1998 2026-01-29 2026-01-29

Données sur l’inflation en France

source dataset Title .html .rData
insee ILC-ILAT-ICC Indices pour la révision d’un bail commercial ou professionnel 2026-01-29 2026-01-29
insee INDICES_LOYERS Indices des loyers d'habitation (ILH) 2026-01-29 2026-01-29
insee IPC-1970-1980 Indice des prix à la consommation - Base 1970, 1980 2026-01-29 2026-01-29
insee IPC-1990 Indices des prix à la consommation - Base 1990 2026-01-29 2026-01-29
insee IPC-2015 Indice des prix à la consommation - Base 2015 2026-01-29 2026-01-29
insee IPC-PM-2015 Prix moyens de vente de détail 2026-01-29 2026-01-29
insee IPCH-2015 Indices des prix à la consommation harmonisés 2026-01-29 2026-01-29
insee IPCH-IPC-2015-ensemble Indices des prix à la consommation harmonisés 2026-01-29 2026-01-29
insee IPGD-2015 Indice des prix dans la grande distribution 2026-01-30 2025-12-20
insee IPLA-IPLNA-2015 Indices des prix des logements neufs et Indices Notaires-Insee des prix des logements anciens 2026-01-30 2026-01-29
insee IPPI-2015 Indices de prix de production et d'importation dans l'industrie 2026-01-30 2026-01-29
insee IRL Indice pour la révision d’un loyer d’habitation 2026-01-08 2026-01-29
insee SERIES_LOYERS Variation des loyers 2026-01-30 2026-01-29
insee T_CONSO_EFF_FONCTION Consommation effective des ménages par fonction 2026-01-30 2025-12-22
insee bdf2017 Budget de famille 2017 2026-01-29 2023-11-21
insee echantillon-agglomerations-IPC-2024 Échantillon d’agglomérations enquêtées de l’IPC en 2024 2026-01-27 2026-01-27
insee echantillon-agglomerations-IPC-2025 Échantillon d’agglomérations enquêtées de l’IPC en 2025 2026-01-27 2026-01-27
insee liste-varietes-IPC-2024 Liste des variétés pour la mesure de l'IPC en 2024 2026-01-27 2025-04-02
insee liste-varietes-IPC-2025 Liste des variétés pour la mesure de l'IPC en 2025 2026-01-27 2026-01-27
insee ponderations-elementaires-IPC-2024 Pondérations élémentaires 2024 intervenant dans le calcul de l’IPC 2026-01-27 2025-04-02
insee ponderations-elementaires-IPC-2025 Pondérations élémentaires 2025 intervenant dans le calcul de l’IPC 2026-01-27 2026-01-27
insee table_conso_moyenne_par_categorie_menages Montants de consommation selon différentes catégories de ménages 2026-01-30 2026-01-27
insee table_poste_au_sein_sous_classe_ecoicopv2_france_entiere_ Ventilation de chaque sous-classe (niveau 4 de la COICOP v2) en postes et leurs pondérations 2026-01-30 2026-01-27
insee tranches_unitesurbaines Poids de chaque tranche d’unités urbaines dans la consommation 2026-01-30 2026-01-27

Data on inflation

source dataset Title .html .rData
bis CPI Consumer Price Index 2026-01-29 2026-01-29
ecb CES Consumer Expectations Survey 2025-08-28 2025-05-24
eurostat nama_10_co3_p3 Final consumption expenditure of households by consumption purpose (COICOP 3 digit) 2026-01-29 2026-01-29
eurostat prc_hicp_cow HICP - country weights 2026-01-29 2026-01-29
eurostat prc_hicp_ctrb Contributions to euro area annual inflation (in percentage points) 2026-01-29 2026-01-29
eurostat prc_hicp_inw HICP - item weights 2026-01-29 2026-01-29
eurostat prc_hicp_manr HICP (2015 = 100) - monthly data (annual rate of change) 2026-01-29 2026-01-29
eurostat prc_hicp_midx HICP (2015 = 100) - monthly data (index) 2025-12-22 2026-01-29
eurostat prc_hicp_mmor HICP (2015 = 100) - monthly data (monthly rate of change) 2026-01-29 2026-01-29
eurostat prc_ppp_ind Purchasing power parities (PPPs), price level indices and real expenditures for ESA 2010 aggregates 2026-01-29 2026-01-29
eurostat sts_inpp_m Producer prices in industry, total - monthly data 2026-01-29 2026-01-29
eurostat sts_inppd_m Producer prices in industry, domestic market - monthly data 2026-01-29 2026-01-29
eurostat sts_inppnd_m Producer prices in industry, non domestic market - monthly data 2024-06-24 2026-01-29
fred cpi Consumer Price Index 2026-01-29 2026-01-29
fred inflation Inflation 2026-01-29 2026-01-29
imf CPI Consumer Price Index - CPI 2026-01-29 2020-03-13
oecd MEI_PRICES_PPI Producer Prices - MEI_PRICES_PPI 2026-01-16 2024-04-15
oecd PPP2017 2017 PPP Benchmark results 2024-04-16 2023-07-25
oecd PRICES_CPI Consumer price indices (CPIs) 2024-04-16 2024-04-15
wdi FP.CPI.TOTL.ZG Inflation, consumer prices (annual %) 2026-01-29 2026-01-29
wdi NY.GDP.DEFL.KD.ZG Inflation, GDP deflator (annual %) 2026-01-29 2026-01-29

LAST_COMPILE

LAST_COMPILE
2026-01-31

LAST_UPDATE

Code
`IPC-1998` %>%
  group_by(LAST_UPDATE) %>%
  summarise(Nobs = n()) %>%
  arrange(desc(LAST_UPDATE)) %>%
  print_table_conditional
LAST_UPDATE Nobs
2016-01-21 15444
2016-01-15 5148
2016-01-13 232749
2015-03-04 1188
2015-02-24 396
2015-02-19 22671
2007-10-08 12
2006-02-28 84

Méthodo

  • Indice des prix à la consommation (base 100=1998) (pdf, fr, 44 Ko, 01/02/2013)
  • Indice des prix à la consommation des ménages du premier quintile de la distribution des niveaux de vie (pdf, fr, 119 Ko, 18/02/2013)
  • Indice des prix à la consommation (base 100=2015) (pdf, fr, 145 Ko, 29/01/2016)
  • Indice des prix à la consommation des ménages - base 100 en 2015 (pdf, fr, 955 Ko, 29/01/2016)
  • Pour comprendre l’indice des prix - Édition 1998 (pdf, fr, 1 Mo, 01/01/1999)
  • Indice des prix à la consommation des ménages - base 100 en 1998 (pdf, fr, 50 Ko, 01/01/1999)
  • Dossier d’information méthodologique. Indice des prix, pouvoir d’achat (pdf, fr, 229 Ko, 01/02/2004)

Documents de travail

  • L’IPC, miroir de l’évolution du coût de la vie en France ? - Ce qu’apporte l’analyse des courbes d’Engel. (pdf, fr, 615 Ko, 02/04/2010)
  • Calcul d’un indice des prix des produits de grande consommation dans la grande distribution (pdf, fr, 204 Ko, 01/01/2014)
  • Ce qui change pour l’IPC à partir du 29 janvier 2016 (pdf, fr, 129 Ko, 29/01/2016)
  • L’expérience française des indices de prix a la consommation (pdf, fr, 107 Ko, 01/01/1996) Indice des prix à la consommation CVS et indice hors tarifs publics et produits à prix volatils corrigé des mesures fiscales, CVS (pdf, fr, 71 Ko, 27/03/1996)
  • Indices mensuels des prix dans la grande distribution (pdf, fr, 126 Ko, 18/02/2016)
  • Contenu des groupes avec les fonctions, les regroupements et les groupes publiés dans la nouvelle base 1998 (pdf, fr, 42 Ko, 01/01/1999)
  • Comparaisons spatiales de prix au sein du territoire français (pdf, fr, 91 Ko, 01/12/2000)
  • Les indices à utilité constante : une référence pour mesurer l’évolution des prix (pdf, fr, 219 Ko, 01/12/2000)
  • La mesure des prix dans les domaines de la santé et de l’action sociale : quelques problèmes méthodologiques (pdf, fr, 212 Ko, 01/06/2003)
  • Indice des prix à la consommation en base 100 en 1998 - Séries longues rétropolées, de 1990 à 2002 (pdf, fr, 201 Ko, 01/09/2003)
  • Impact des ajustements de qualité dans le calcul de l’indice des prix à la consommation (pdf, fr, 53 Ko, 01/05/2004)
  • Introduction à la pratique des indices statistiques (pdf, fr, 426 Ko, 01/11/2005)
  • Note additionnelle sur les changements de l’année 2017 (pdf, fr, 228 Ko, 23/02/2017)

INDICATEUR

Code
`IPC-1998` %>%
  left_join(INDICATEUR,  by = "INDICATEUR") %>%
  group_by(INDICATEUR, Indicateur) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional
INDICATEUR Indicateur Nobs
IPC Indice des prix à la consommation (IPC) 273928
ISJ Indice d'inflation sous-jacente (ISJ) 3764

PRIX_CONSO

Code
`IPC-1998` %>%
  left_join(PRIX_CONSO,  by = "PRIX_CONSO") %>%
  group_by(PRIX_CONSO, Prix_conso) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional

CORRECTION

Code
`IPC-1998` %>%
  left_join(CORRECTION,  by = "CORRECTION") %>%
  group_by(CORRECTION, Correction) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional
CORRECTION Correction Nobs
BRUT Non corrigé 272987
CVS-FISC Corrigé des mesures fiscales et des variations saisonnières 3764
CVS Corrigé des variations saisonnières 941

NATURE

Code
`IPC-1998` %>%
  left_join(NATURE,  by = "NATURE") %>%
  group_by(NATURE, Nature) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional
NATURE Nature Nobs
INDICE Indice 224377
POND Pondérations d'indice 24260
VARIATIONS_M Variations mensuelles 14321
GLISSEMENT_ANNUEL Glissement annuel 13716
VARIATIONS_A Variations annuelles 1018

MENAGES_IPC

Code
`IPC-1998` %>%
  left_join(MENAGES_IPC,  by = "MENAGES_IPC") %>%
  group_by(MENAGES_IPC, Menages_ipc) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional
MENAGES_IPC Menages_ipc Nobs
ENSEMBLE Ensemble des ménages 263721
URBAIN Ménages urbains dont le chef est ouvrier ou employé 13724
PREMIERQUINTILE Ménages du premier quintile de la distribution des niveaux de vie 247

COICOP1998

Code
`IPC-1998` %>%
  left_join(COICOP1998,  by = "COICOP1998") %>%
  group_by(COICOP1998, Coicop1998) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional

TITLE_FR

Code
`IPC-1998` %>%
  group_by(TITLE_FR, IDBANK) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional

REF_AREA

Code
`IPC-1998` %>%
  group_by(REF_AREA) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional
REF_AREA Nobs
FE 162501
FM 93015
D971 5544
D972 5544
D973 5544
D974 5544

TIME_PERIOD

Code
`IPC-1998` %>%
  group_by(TIME_PERIOD) %>%
  summarise(Nobs = n()) %>%
  arrange(desc(TIME_PERIOD)) %>%
  print_table_conditional()

Produits Manuafcturés, Services

Code
`IPC-1998` %>%
  filter(IDBANK %in% c("000641339", "000641338")) %>%
  mutate(TITLE_FR = TITLE_FR %>% gsub("Indice mensuel d'inflation sous-jacente - Base 1998 - ", "", .),
         TITLE_FR = TITLE_FR %>% gsub("- Corrigé des mesures fiscales et des variations saisonnières - Série arrêtée", "", .)) %>%
  month_to_date %>%
  ggplot() + 
  geom_line(aes(x = date, y = OBS_VALUE, color = TITLE_FR, linetype = TITLE_FR)) +
  scale_color_manual(values = viridis(5)[1:4]) +
  theme_minimal() +
  scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  theme(legend.position = c(0.75, 0.3),
        legend.title = element_blank()) +
  scale_y_log10(breaks = seq(0, 200, 10),
                     labels = dollar_format(accuracy = 1, prefix = "")) +
  ylab("Indice des prix") + xlab("")

Pondérations d’indice

1992, 1994, 1996, 1998

Code
`IPC-1998` %>%
  filter(NATURE == "POND",
         REF_AREA == "FM",
         TIME_PERIOD %in% c("1998", "1996", "1994", "1992", "1990", "2005", "2010", "2002"),
         MENAGES_IPC == "ENSEMBLE") %>%
  select_if(function(col) length(unique(col)) > 1) %>%
  select(-IDBANK, -TITLE_FR, -TITLE_EN, -OBS_STATUS, -OBS_TYPE) %>%
  left_join(PRIX_CONSO,  by = "PRIX_CONSO") %>%
  left_join(COICOP1998,  by = "COICOP1998") %>%
  spread(TIME_PERIOD, OBS_VALUE) %>%
  print_table_conditional

Assurance Santé

Code
`IPC-1998` %>%
  filter(INDICATEUR == "IPC",
         MENAGES_IPC == "ENSEMBLE",
         COICOP1998 %in% c("1253"),
         REF_AREA == "FM",
         NATURE == "POND") %>%
  year_to_date %>%
  mutate(OBS_VALUE = OBS_VALUE/10000) %>%
  ggplot() + ylab("Poids de l'assurance santé dans l'indice des prix") + xlab("") + theme_minimal() +
  geom_line(aes(x = date, y = OBS_VALUE)) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = seq(1920, 2100, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10, 0.1),
                     labels = percent_format(accuracy = .1))

Tabac

Code
`IPC-1998` %>%
  filter(INDICATEUR == "IPC",
         MENAGES_IPC == "ENSEMBLE",
         COICOP1998 %in% c("0221"),
         REF_AREA == "FM",
         NATURE == "POND") %>%
  year_to_date %>%
  mutate(OBS_VALUE = OBS_VALUE/10000) %>%
  ggplot() + ylab("Poids du tabac dans l'indice des prix") + xlab("") + theme_minimal() +
  geom_line(aes(x = date, y = OBS_VALUE)) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = seq(1920, 2100, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10, 0.1),
                     labels = percent_format(accuracy = .1))

Santé

Code
`IPC-1998` %>%
  filter(INDICATEUR == "IPC",
         MENAGES_IPC == "ENSEMBLE",
         COICOP1998 %in% c("06"),
         REF_AREA == "FM",
         NATURE == "POND") %>%
  year_to_date %>%
  mutate(OBS_VALUE = OBS_VALUE/10000) %>%
  ggplot() + ylab("Poids de la santé dans l'indice des prix") + xlab("") + theme_minimal() +
  geom_line(aes(x = date, y = OBS_VALUE)) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = seq(1920, 2100, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 12, 0.1),
                     labels = percent_format(accuracy = .1))

2-digit

Boissons Alcoolisées, Logement, Restaurants et hôtels

Code
`IPC-1998` %>%
  filter(COICOP1998 %in% c("00", "02", "11", "04"),
         REF_AREA == "FM",
         NATURE == "INDICE",
         FREQ == "M") %>%
  month_to_date %>%
  left_join(COICOP1998, by = "COICOP1998") %>%
  group_by(COICOP1998) %>%
  arrange(date) %>%
  mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
  ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
  geom_line(aes(x = date, y = OBS_VALUE, color = Coicop1998)) +
  scale_color_manual(values = viridis(5)[1:4]) +
  scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  scale_y_log10(breaks = c(100, 120, 150, 200, 220, 250, 300, 400, 500),
                     labels = dollar_format(accuracy = 1, prefix = ""))

Transports, Enseignement, B&S Divers

Code
`IPC-1998` %>%
  filter(COICOP1998 %in% c("00", "10", "07", "12"),
         REF_AREA == "FM",
         NATURE == "INDICE",
         FREQ == "M") %>%
  month_to_date %>%
  left_join(COICOP1998, by = "COICOP1998") %>%
  group_by(COICOP1998) %>%
  arrange(date) %>%
  mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
  ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
  geom_line(aes(x = date, y = OBS_VALUE, color = Coicop1998)) +
  scale_color_manual(values = viridis(5)[1:4]) +
  scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  scale_y_log10(breaks = seq(100, 300, 10),
                     labels = dollar_format(accuracy = 1, prefix = ""))

Alimentation, Habillement, Meubles

Code
`IPC-1998` %>%
  filter(COICOP1998 %in% c("00", "05", "01", "03"),
         REF_AREA == "FM",
         NATURE == "INDICE",
         FREQ == "M") %>%
  month_to_date %>%
  left_join(COICOP1998, by = "COICOP1998") %>%
  group_by(COICOP1998) %>%
  arrange(date) %>%
  mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
  ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
  geom_line(aes(x = date, y = OBS_VALUE, color = Coicop1998)) +
  scale_color_manual(values = viridis(5)[1:4]) +
  scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  scale_y_log10(breaks = seq(100, 300, 10),
                     labels = dollar_format(accuracy = 1, prefix = ""))

Santé, Communications, Loisirs

Code
`IPC-1998` %>%
  filter(COICOP1998 %in% c("00", "06", "09", "08"),
         REF_AREA == "FM",
         NATURE == "INDICE",
         FREQ == "M") %>%
  month_to_date %>%
  left_join(COICOP1998, by = "COICOP1998") %>%
  group_by(COICOP1998) %>%
  arrange(date) %>%
  mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
  ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
  geom_line(aes(x = date, y = OBS_VALUE, color = Coicop1998)) +
  scale_color_manual(values = viridis(5)[1:4]) +
  scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  theme(legend.position = c(0.2, 0.85),
        legend.title = element_blank()) +
  scale_y_log10(breaks = seq(10, 300, 10),
                     labels = dollar_format(accuracy = 1, prefix = ""))