Comment analyser les données d'enquête du Pew Research Center en R

Pew Research Center publie publiquement ses données d’enquête sous forme de fichiers IBM SPSS portant l’extension .sav. Mais si vous n’avez pas accès à SPSS, des outils gratuits et à code source ouvert sont disponibles pour analyser et utiliser les données.

Même avec un accès SPSS de base, l'utilisation de données d'enquête nécessite des outils ou techniques supplémentaires pour gérer correctement les poids d'enquête ou d'autres fonctionnalités de conception d'enquête complexes. Les analyses qui ne prennent pas en compte ces caractéristiques de conception peuvent produire des résultats biaisés et surestimer la précision des estimations ou des tests statistiques. Heureusement, les outils permettant d’effectuer ce type d’analyses sont disponibles gratuitement avec la plate-forme logicielle de statistique R.

Cet article fournit un tutoriel rapide sur la manière d’analyser correctement les données d’enquête du Centre à l’aide de R. Il s’agit du premier d’une série occasionnelle d’aides destinées à vous aider à analyser des ensembles de données d’enquête à l’aide de R.

Qu'est ce que R?

R est un langage et un environnement pour l'informatique statistique et les graphiques. R est disponible sous forme de logiciel libre sous forme de code source selon les termes de la licence publique générale GNU de la Free Software Foundation. Il compile et fonctionne sur une grande variété de plates-formes UNIX et de systèmes similaires (y compris FreeBSD et Linux), Windows et MacOS. Pour en savoir plus sur R et comment le télécharger, visitez r-project.org.

L'analyse dans ce post s'appuiera sur:
 - R
 - R Studio (éditeur de code open source et interface fonctionnant en langage R)
 - Les packages R librement disponibles suivants:
· Étranger
· sondage
· Knitr

Pour installer ces packages, utilisez le code suivant:

install.packages (c ("foreign", "survey", "knitr"))

Accéder aux données du Pew Research Center

De nombreux jeux de données d’enquête du Pew Research Center peuvent être téléchargés en accédant à l’onglet «Datasets» du site Web du centre. Pour plus d'informations sur le type de données publiées par le Centre et sur la façon d'y accéder, lisez ce billet de blog.

Presque toutes les données pouvant être téléchargées à partir du Centre sont stockées dans des fichiers SPSS .sav. Les fichiers SPSS contiennent souvent à la fois des valeurs et des étiquettes de valeurs - par exemple, 1 pour Républicain, 2 pour Démocrate.

Ce tutoriel utilisera les données de l’enquête politique menée par le Centre en avril 2017, qui portait sur des sujets tels que les opinions des Américains sur les institutions nationales et leur confiance dans le gouvernement.

Chargement des données de l'enquête dans R

La première étape de l'analyse des données d'enquête dans R consiste à lire le fichier de données dans votre environnement R. Les données étant stockées dans un fichier .sav, vous souhaiterez utiliser la fonction read.spss () du package «étranger» de R. Ci-dessous, nous chargeons d’abord les bibliothèques de paquets, puis lisons les données dans un fichier data.frame que nous appellerons «Apr17». Par défaut, read.spss () conserve toutes les étiquettes de variable et de valeur pour les données d’enquête, mais ne crée pas automatiquement un nom data.frame. Nous devons donc définir explicitement un paramètre. Ici, nous utilisons to.data.frame = TRUE pour charger le fichier dans notre environnement R en tant que data.frame.

 bibliothèque (étrangère)
 bibliothèque (enquête)
 bibliothèque (knitr)
 Apr17 <- read.spss ("Apr17 public.sav", # chemin du fichier vers l'ensemble de données
                    to.data.frame = TRUE) #sets object to data frame
## réencodage à partir du CP1252

Si vous exécutez ce code, vous recevrez un avertissement pour les variables ne comportant pas d'étiquettes pour chaque catégorie, telles que l'âge. Dans ces cas, read.spss () ajoutera ces étiquettes par défaut. Si vous recherchez un comportement différent, consultez l’option add.undeclared.levels ().
 
 La plupart des variables des ensembles de données du Centre - telles que le sexe, la race, etc. - sont catégoriques. Dans R, ces types de variables sont appelés facteurs. Vous pouvez utiliser la fonction table () pour voir comment une variable de facteur est distribuée comme suit:

table (fête du 17 avril)
 ##
 ## républicain démocrate
 ## 375 466
 ## Independent No préférence (VOL.)
 ## 616 28
 ## Autre partie (VOL.) Ne sait pas / Refus (VOL.)
 ## 9 7

Mise en place d'un plan de sondage

La prochaine étape de l’analyse des données d’enquête consiste à utiliser la fonction svydesign du package «enquête» de R pour créer un objet de sondage. Cette étape est importante car elle indique explicitement que le plan d’enquête utilise correctement les poids de sondage et d’autres éléments du plan pour l’estimation. La fonction svydesign accepte de nombreuses formes différentes de plans d’enquête complexes. Pour lire plus de détails sur la fonction, cliquez ici.

Pour la majorité des enquêtes Pew Research Center, y compris l'ensemble de données d'avril 2017 utilisé dans ce didacticiel, les utilisateurs doivent spécifier trois éléments lors de la déclaration du modèle d'enquête:
 
 1. Les identifiants de cluster avec ids =. Presque toutes les enquêtes du centre basées aux États-Unis ne comportent pas d'identificateur de grappe. Utilisez la formule ~ 0 pour indiquer que cette enquête n’a pas de grappes.
 2. Le jeu de données d’enquête avec data =
 3. Les poids de sondage avec des poids =

Apr17_design = svydesign (
         ids = ~ 0, # formule indiquant qu'il n'y a pas de clusters
         data = Apr17, #c'est le jeu de données
         poids = ~ poids) #c'est la variable 'poids'
                            #de l'ensemble de données Apr17

Estimation des fréquences avec les poids de sondage

Une fois le plan d’enquête déclaré, vous pouvez obtenir des estimations pondérées à l’aide de la fonction svymean (). Les principaux arguments de svymean () sont la formule identifiant la variable qui vous intéresse et l'objet de conception de l'enquête.

La fonction svymean () peut être utilisée pour calculer des moyennes pondérées, des variances, des ratios, des totaux et plus encore. La statistique renvoyée dépend de la classe de la variable à laquelle elle est appelée. Par exemple, pour estimer l’approbation de l’emploi du président Donald Trump (q1 - une variable factorielle), utilisez le code suivant:

svymean (~ q1, # variable pour estimer
         design = Apr17_design #survey objet de conception
                                #créé avec svydesign ()
         )
 ## signifie SE
 ## q1Approve 0.394008 0.0144
 ## q1Disapprove 0.542368 0.0147
 ## q1Ne sait pas / refuse (VOL.) 0.063624 0.0078

Pour examiner l’approbation du travail de Trump parmi différents sous-groupes, vous pouvez utiliser la fonction svyby (), qui calcule des statistiques pour les sous-groupes de l’ensemble de données. La fonction svymean () peut être utilisée conjointement avec la fonction svyby () pour calculer des estimations pondérées sur des sous-ensembles de données déterminés par d'autres variables factorielles. La fonction kable () du paquetage knitr affiche les statistiques sous forme de tableau.

Pour estimer l’approbation présidentielle chez les hommes et les femmes, par exemple, vous pouvez utiliser ce code:

q1_by_sex = svyby (~ q1, #variable à estimer
                   ~ sexe, variable de sous-groupe
                   design = Apr17_design,
                   FUN = svymean, #function à utiliser sur chaque sous-groupe
                   keep.names = FALSE # n'inclut pas row.names
                                       #pour la variable de sous-groupe
      )
 
 knitr :: kable (q1_by_sex, digits = 2)

Cet article ne fait qu'effleurer le genre d'analyses que vous pouvez effectuer dans R avec le paquet d'enquête, mais j'espère que cela suffira pour vous aider à démarrer. Nous prévoyons d’écrire d’autres publications sur l’analyse et la visualisation des données d’enquête avec R. Si vous avez des questions à propos de cette publication, ou si vous souhaitez savoir comment procéder avec d'autres données de l'enquête, laissez-nous vous aider. savoir à info@pewresearch.org.

Nick Hatley est analyste de recherche au centre de recherche Pew.