Categories

Archives

Début de cartographie avec R

R, le logiciel libre de statistiques, peut être étendu au traitement de données spatiales, et il arrive même à générer des cartes. La plupart des exemples que j’ai trouvés en ligne concernent l’utilisation de fichiers de type shapefile .shp, j’avais besoin d’un outil plus simple.
Le package “maps” qui contient une carte des départements français, semblait un point de départ intéressant. Ce billet a pour but d’aider d’autres novices qui souhaiteraient produire des choses similaires à ceci :

Les deux cartes ci-dessus ont été produites avec R et le paquet “maps”. Elles présentent, pour l’année 2004, le nombre de naissances d’enfants mâles nommés Ewen et Erwan pour la France métropolitaine et continentale. En gros, Erwan a été abandonné par les Bretons et adopté par les Chtis. Les Bretons ont produit le superceltique “Ewen” qui est très rare en dehors de la Bretagne [Pour une discussion sur les prénoms bretons, voir ici].

*

Le principal problème, à mon avis, avec la géo-statistique, c’est l’établissement du lien entre le fond de carte et les données. Comment l’ordinateur peut-il comprendre que certains chiffres correspondent à certains départements ? C’est sur cette question que je vais me centrer ici. Je n’aborderai pas du tout la sémantique cartographique ou le choix de données significatives (proportions plutôt que valeurs absolues, etc…).
Commençons par installer le paquet “maps” :

install.packages("maps")
library(maps)
france<-map(database="france")

L’objet “france” est composé de descriptifs des polygones départements : $x (longitudes) et $y ; d’une description de la zone : $range ; et des noms des départements : $names.
L’instruction france$names donnera, dans R, une idée :

  [1] "Nord"                                 "Pas-de-Calais"                       
  [3] "Somme"                                "Nord"                                
  [5] "Ardennes"                             "Seine-Maritime"  

Les départements ne sont pas identifiés par leur numéro administratif, mais par leur nom, avec des étrangetés comme “Cote-Dor”. Les enclaves (l’exclave du Nord dans le Pas de Calais, dite communauté de communes de l’Enclave) sont représentées : d’où l’apparition, dans la liste ci-dessus, de “Nord” à deux reprises.
Produisons une carte toute simple colorant certains départements :

dpt2001<-c("Ain","Marne","Nord","Charente")
col2001<-c(1,2,3,5)
match <- match.map(france,dpt2001) 
color <- col2001[match] 
map(database="france", fill=TRUE, col=color)

C’est l’instruction “match.map” qui établit le lien entre la liste des départements qui se trouve dans “dpt2001” et le fond de carte, “france”. Le résultat donne quelque chose comme ceci :

L’exclave du Nord est bien coloriée en rouge, comme les îles (Ré et Oléron) au large de la Charente-Maritime. Et comme l’on n’a pas été strict, R a compris qu’il fallait colorier et Charente, et Charente-Maritime… Cela peut poser problème, attention…
Il est donc préférable, peut-être, de demander ceci à R :

match <- match.map(france,dpt2001,exact=TRUE)

Pour la carte des “Ewen”, mes données sont structurées ainsi (j’ai enlevé le nombre de naissances) :

              nom DPT NOMBRE
1        Calvados  14      *
2    Cotes-Darmor  22     **
3       Finistere  29     **

Et pour obtenir la carte, je demande à R ceci :

dptewen<-ewen$nom
colewen<-ewen$NOMBRE
match <- match.map(france,dptewen,exact=TRUE)
gray.colors <- function(n) gray(rev(0:(n-1)/1.5)/n)
color <- gray.colors(100)[floor(colewen[match])] 
map(database="france", fill=TRUE, col=color)

Au final, donc, il est possible de produire à peu de frais des cartes, presque aussi facilement qu’avec Philcarto, mais pour bénéficier de ce qu’offre Philcarto (les traitements statistiques intégrés et l’excellente formalisation sémantique), il faudra apprendre encore plus de R.

Y a-t-il autant de prénoms bretons en Bretagne que de prénoms basques au Pays basque ?

Dans La Création des identités nationales, Anne-Marie Thiesse relate la mise en place d’un “kit” permettant de construire des nations, d’un “système IKEA” de construction des identités. « On sait bien aujourd’hui établir la liste des éléments symboliques et matériels que doit présenter une nation digne de ce nom: une histoire établissant la continuité avec les grands ancêtres, une série de héros parangons des vertus nationales, une langue, des monuments culturels, un forlklore, des hauts lieux et un paysage typique, une mentalité particulière, des représentations officielles — hymne et drapeau — et des identifications pittoresques — costume, spécialités culinaires ou animal emblématique. » (p.14)
Parmi les éléments du kit identitaire, l’on trouverait certainement une liste de prénoms nationaux. François, Helmut, ou Javier font référence à quelques nations établies. Et dans leurs frontières, les promoteurs de la nation ont essayé de limiter l’usage de prénoms halogènes. Cela s’est combiné avec le mouvement d’identification des citoyens lié à la solidification des Etats : En France, par exemple, à partir de la Révolution, le prénom est devenu un élément fixe de l’identité. Il est devenu de plus en plsu difficile d’en changer au fur et à mesure de l’accroissement de l’emprise des formulaires administratifs sur les personnes. Une «morale d’état civil» base l’identité personnelle sur l’identité de papier.

L’établissement d’une identité nationale uniforme a toujours été impossible : l’attachement à la fiction nationale n’allait pas jusqu’à l’abandon des particularismes locaux (ces derniers étant d’ailleurs énergisés à nouveaux frais comme des conservatoires de traditions nationales). Ainsi, au début du XXe siècle, un spécialiste des prénoms, Edouard Lévy, écrivait :

En Franche-Comté on trouve un assez grand nombre de Othilie, de Ludivine et de Mélitine, en Picardie des Adéodat, en Provence des Marius, alors que ces mêmes prénoms seraient à Paris quelque peu gênants pour leurs titulaires.
source : La question des prénoms, 1913, p.30

Et l’on trouvait aussi beaucoup de Léonard dans le Limousin.

Pour certains, cependant, ces particularismes onomastiques sont la preuve d’une nation sous-jacente. En France, les nationalistes bretons ont fait de la question des prénoms un des thèmes de mobilisation. Entre la fin des années cinquante et le milieu des années soixante-dix, ce thème était incarné par la famille Le Goarnig, dont une partie des enfants avait été privée d’état civil (pour cause de prénoms bretons, dont Adra boran, Maïwenn, Gwendal, Diwzka et Sklerijen). Pour ces nationalistes onomastiques, l’usage de prénoms bretons devait nécessairement s’accompagner d’une inscription de ces prénoms dans les registres d’état civil.

Les Le Goarnig ont-ils été suivis ? L’on connaît tous, probablement, un Yann ou une Nolwenn, une Gwenaëlle ou un Gwendall, un Erwan ou un Ewenn… mais ces connaissances anecdotiques peuvent-elles être solidifiées par l’analyse précise des prénoms donnés aux personnes nées en Bretagne depuis la fin de la Seconde Guerre mondiale ? Heureusement, oui :

prénoms bretons et prénoms basques

Je me suis inspiré d’un article de Michel Rouxel de l’INSEE [PDF] [vous remarquerez que si nos proportions divergent, l’évolution est similaire].

Après Guerre, seuls 7% des nouveaux-nés en Bretagne étaient titulaire d’un prénom breton : le classique Yann et d’autres. Peu d’évolutions jusque vers 1973 : c’est dans les années soixante-dix que se met en place la régionalisation (loi de 1972), que des partis bretons connaissent une période faste, que l’enseignement du breton comme langue se développe.
Aujourd’hui, un bébé né en Bretagne sur cinq reçoit un prénom breton, et le mouvement semble devoir se poursuivre. [Note technique : le “fichier des prénoms” de l’INSEE groupe dans une catégorie unique “prénoms rares” certains prénoms très peu donnés, et cette catégorie représente une proportion de plus en plus importante des naissances. “Un sur cinq” est donc à comprendre comme une estimation basse].
Est-ce à comprendre comme l’indice d’un courant nationaliste breton ? Le prénom est-il un indicateur ? Hmmm… j’en doute. Les sonorités proposées par ces prénoms sont peut-être à la mode.

Essayons d’en savoir plus, en examinant un autre peuple, les Basques. On dispose des mêmes données pour les Pyrénées atlantiques. On remarque aussi que la proportion de bébés recevant des prénoms basques a augmenté au cours des quarante dernières années. Mais là se pose un problème : la proportion de bébés “basques” recevant un “prénom breton” est plus élevée que la proportion de bébés “basques” recevant un “prénom basque”.
comparaison
Tout ça pour inciter à la prudence dans l’interprétation… Mes listes de prénoms bretons et basques sont peut-être déficientes (avec des prénoms qui seraient peut-être communs, comme, au hasard Adrian) et pas assez exclusives (j’ai environ 1500 prénoms bretons et 1600 prénoms basques).

R et ses petites joies

Je profite de l’absence de cours, et d’une atmosphère plus douce pour me pencher, des heures durant, sur le “fichier des prénoms” de l’INSEE (obtenu par l’intermédiaire du Centre Quételet). Je l’exploite avec R, le logiciel libre, que j’avais commencé à comprendre il y a quelques années puis oublié. Olivier Godechot m’y a replongé, avec son “Introduction à R”.

Le “fichier des prénoms” se présente sous la forme suivante (j’ai gardé la structure et modifié les noms) :

  SEXE PREUSUEL ANNAIS NOMBRE
1    1   PAUL     1954     3
2    1   PAUL     1980     3
3    1   PAUL     1986     3
4    1   PAUL     1998     4
5    1   PIERRE   1976     5
6    1   PIERRE   1978     3

Mais j’ai du mal à traiter les données ainsi structurées (par exemple pour trouver le rang qu’occupe un prénom une année donnée..). Il me faudrait quelque chose du genre :

SEXE PREUSUEL 1900 1901 1902 ...
1    PAUL     1    1    NA   ...
1    PIERRE   2    NA   5    ...

Après de longues heures de recherches, j’ai compris l’intérêt du package reshape. En modifiant les noms des colonnes ainsi :

  SEXE subject variable value
1    1   PAUL     1954     3
2    1   PAUL     1980     3

et à l’aide d’une simple ligne de code :
prenoms<-cast(prenoms2005,SEXE+subject~variable)
…j’ai obtenu ce que je souhaitais ! [L’obligation de modifier le nom des colonnes reste étrange… mais ça ne marchait pas sinon…]
De formidables graphiques ont suivi.

Les mariages religieux

Qui se marie religieusement et qui choisit une cérémonie civile ? Ce type de question est généralement assez complexe, principalement parce que les données concernant le mariage civil et celles concernant le mariage religieux sont conservées séparément, par des institutions fort différentes. Aux États-Unis, comme les membres du clergé ont la possibilité d’agir en tant qu’officiers d’état-civil quand ils célèbrent des mariages, l’État recueille des données sur les mariages “religieux”. En 1988, environ 70% du total des mariages civils étaient des mariages religieux, et des données précises sur quelques 780 000 couples sont disponibles.
Alors, les mariages religieux sont-ils ceux des plus typiques des mariés (ceux qui se marient à l’âge moyen, qui ont une différence d’âge réduite mais favorable à l’homme) ?
L’image ci-dessous apporte quelques éléments de réponse, mais surtout de jolies couleurs. Cette représentation graphique est à lire comme une série de courbes de niveau : pour une couleur donnée (disons jaune) X % (ici entre 30 et 40%) des couples qui se marient choisissent un mariage religieux. On constate que c’est environ là où les mariages sont les plus nombreux qu’ils sont aussi les plus religieux (pour des couples jeunes). Les couples “discordants”, pour lesquels l’écart d’âge est trop important, se marient plutôt civilement. Mais les couples les plus âgés, où l’homme et la femme ont plus de 65 ans, se marient aussi, surtout, religieusement.
Pourcentage de mariages religieux selon l'âge des époux
La réponse, provisoire, est donc mitigée. De plus, je n’ai pas distingué entre les couples dont le mariage est un premier mariage des couples comptant un-e divorcé-e ou une veuve, deux populations qui n’ont pas le même accès où la même attitude face au mariage religieux : les remariages religieux sont moins fréquents (ne serait-ce que parce que l’Eglise catholique romaine met des freins au remariage des divorcés).