Bon, je vais faire un rapide billet pour répondre à un commentaire qui avait
été posté ici,
qui remettait en cause mes
conclusions (ce qui ne me gêne pas, loin de là, c'est
comme ça qu'on va faire avancer les choses), et surtout demandait des
informations complémentaires. J'avais un peu forcé le trait en
affirmant que "une personne de 70 ans vivra à peine plus longtemps - en moyenne -
qu’une personne de 70 ans en 1950"
(c'est peut être le cas pour les centenaires, mais je n'ai pas de
données), mais le but de mon précédant billet était de montrer que les
gains sont beaucoup plus faibles que pour les plus jeunes.
J'ai
décidé de refaire l'étude, de manière plus
claire peut être, et plus complète. Et en utilisant des données de l'INED, qui est une source a priori fiable de données.
Comme je le disais, tout d'abord, les données: je prends ici les
données de l'INED (et pas de http://mortalityorg). On peut trouver en
ligne (au format xls) des données de population par âge et par sexe,
ici
(populations par âge, de 0 à 100 ans, au premier janvier,
de 1899 à 1998, selon le territoire couvert par la statistique
des décès, ensemble des deux sexes, avec depuis 1946, les
données INSEE et avant 1946, des reconstitutions
intercensitaires (Vallin, 1973)). Et
là,
on a les données du nombre de décès par âge
et par sexe (décès par âge et par
génération, de 1899 à 1997, ensemble des deux
sexes, avec pour les moins de 100 ans, depuis 1907, décès
hors pertes militaires (SGF, puis INSEE), pour les années
de guerre : décès (INSEE + estimations des pertes
militaires (Vallin, 1973)) et entre 1899 et 1906 : décès
par âge de l'INSEE, répartition entre les triangles de
Lexis (Vallin, 1973). Pour les centenaires, jusqu'en 1967 : SGF, INSEE
+ répartitions estimées par les auteurs, et depuis 1968 :
INSEE (extrait d'enregistrements individuels fournis par l'INSEE dans
le cadre d'un avenant à la convention INED-INSEE)). Voilà
pour les données, ou presque....
Par paresse, et pour pouvoir partager les données plus facilement, j'ai mis en ligne des fichiers csv sur ma page.
Les données (brutes) contiennent des colonnes sans
intérêt, que je me suis permis de virer. Sinon dans la
base des populations, certaines lignes ont été supprimées car en 1914 il y avait deux populations, sur territoire d'avant 1914 (sans l'Alsace-Lorraine: Moselle, Bas-Rhin,
Haut-Rhin), et le territoire sans opérations militaires
(manquent, outre l'Alsace-Lorraine: Aisne, Ardennes, Marne,
Meurthe-et-Moselle, Meuse, Nord, Oise, Pas-de-Calais, Somme et Vosges).
C'est cette dernière qui est retenues dans la base des
décès c'est donc cette dernière que l'on utilisera
pour calculer l'exposition.
> tabB=read.table("http://perso.univ-rennes1.fr/arthur.charpentier/tabB.csv",
+ sep=";",header=FALSE)
> ANNEE=tabB[,1]
> BASEB=tabB[,seq(2,246,by=2)]
> BASEB=BASEB[,1:100]
> tabC=read.table("http://perso.univ-rennes1.fr/arthur.charpentier/tabC.csv",
+ sep=";",header=FALSE)
> BASEC=tabC[,2:101]
> BASEC=BASEC[-c(16,23,43,48,51,53),]
> BASEC=BASEC[1:nrow(BASEB),]
> AGE=0:99
- Les taux de décès (population entière)
Commençons par calculer, et tracer les taux de
décès, qui sont les ratios entre les nombres de
décès et la population totale.
Mon premier point (pour répondre au commentaire) est que si l'on
regarde un peu la surface, les gains en terme de taux de
mortalité instantanés sont plus importants à la
naissance (courbe
rouge) qu'à des âges beaucoup plus élevés, comme 90 ans (en
bleu) voire à 65 ans (en
vert),
Comme on le voit, sur nos données, on est limité car on
n'a qu'un siècle de données, et c'est donc délicat
de suivre les espérances de vie.
Le plus simple est alors de reprendre ce que j'avais fait (en ligne
ici), utilisons les fonctions de Rob Hyndman, en ligne sur son blog (
là), mais sur nos données (la dernière fois j'avais utilisé les siennes).
> library(demography)
Le chargement a nécessité le package : forecast
Le chargement a nécessité le package : fracdiff
This is forecast 2.05
Le chargement a nécessité le package : rainbow
Le chargement a nécessité le package : hdrcde
Le chargement a nécessité le package : locfit
Le chargement a nécessité le package : akima
Le chargement a nécessité le package : lattice
locfit 1.5-6 2010-01-20
Le chargement a nécessité le package : ash
Le chargement a nécessité le package : ks
Le chargement a nécessité le package : KernSmooth
KernSmooth 2.23 loaded
Copyright M. P. Wand 1997-2009
Le chargement a nécessité le package : mvtnorm
hdrcde 2.13 loaded
Attachement du package : 'hdrcde'
Le chargement a nécessité le package : MASS
Le chargement a nécessité le package : pcaPP
Le chargement a nécessité le package : cluster
Le chargement a nécessité le package : ftsa
This is demography 1.03
Il y a eu 13 avis (utilisez warnings() pour les visionner)
Commençons par mettre les données au bon format. Pour des raisons numériques, je suis
obligé
de me débarrasser des âges élevés pour lesquels j'ai pu avoir une
population nulle, ou pour lesquels j'ai des valeurs manquantes. J'ai
donc exclu les âges supérieurs à 90 ans,
> donnees = demogdata(data=t(as.matrix(BASEB[,1:90]))/t(as.matrix(BASEC[,1:90])),
+ pop= t(as.matrix(BASEC[,1:90])),
+ ages=AGE[1:90],
+ years=ANNEE,
+ type="mortality", label="France", name="total", lambda=0)
> donnees
Mortality data for France
Series: total
Years: 1899 - 1997
Ages: 0 - 89
Ensuite, on peut reprendre le code que j'avais fait. Notons qu'on
utiliser ici une modélisation à la Lee et Carter, ce qui
a été utilisée par l'INED pour extrapoler
certaines données dans la table.
> france.LC2 <- lca(donnees,adjust="dt",series="total")
> france.fcast <- forecast(france.LC2)
> L2 <- lifetable(france.fcast)
> ex2=L2$ex
> L1=lifetable(donnees,series="total")
> ex1=L1$exPour l'espérance de vie
à la naissance,
et son évolution dans le temps, si on regarde les gains moyens année
après année, on voit que l'on gagne, en moyenne, 1/4 d'espérance de
vie, soit 3 mois par an (comme dans mon précédant billet),
> age=0
> ex=c(ex1[age+1,],ex2[age+1,])
> plot(1899:2047,ex,col="blue")
> I=(1950:2000)-1898
> y=ex[I]
> x=1950:2000
> lm(y~x)
Call:
lm(formula = y ~ x)
Coefficients:
(Intercept) x
-421.0384 0.2549
> abline(lm(y~x),col="red")
> points(x,y,pch=19,col="red")
On
notera qu'en utilisant les autres méthodes d'estimation, j'obtiens la
même pente. En revanche, si je regarde l'espérance de vie résiduelle à
65 ans, elle n'est plus que de 0,16 années, soit moins de deux mois
chaque années,
> age=65
> ex=c(ex1[age+1,],ex2[age+1,])
> plot(1899:2047,ex,col="blue")
> I=(1950:2000)-1898
> y=ex[I]
> x=1950:2000
> lm(y~x)
Call:
lm(formula = y ~ x)
Coefficients:
(Intercept) x
-295.6812 0.1612
> abline(lm(y~x),col="red")
> points(x,y,pch=19,col="red")
Dit
autrement, entre un bébé qui nait en 1975 et un bébé qui nait en 1995,
il y a un gain d'environ 6 ans d'espérance de vie, passant de 81,8 ans
à 87,7, alors que pour une personne qui atteignait les 65 ans en 1975,
il avait 22 ans à vivre encore, en moyenne, contre
seulement 26,5
pour une personne de 65 ans en 1995. Donc je peux maintenir ce que
j'affirmais la dernière fois, sur d'autres données.... En fait, si on
veut être plus précis, on peut précisément regarder l'évolution de la
pente, correspondant au gain moyen d'espérance de vie chaque année,

Bref,
de considérables progrès ont été effectués en terme de gains
d'espérance de vie, mais beaucoup plus sur les jeunes que sur les
personnes plus âgées...