Je suis assistante de recherche pour un laboratoire (bénévole). Moi et un petit groupe avons été chargés de l'analyse des données pour un ensemble de données tirées d'une grande étude. Malheureusement, les données ont été collectées avec une application en ligne, et elle n'était pas programmée pour produire les données sous la forme la plus utilisable.
Les images ci-dessous illustrent le problème de base. On m'a dit que cela s'appelait une «refonte» ou une «restructuration».
Question: Quel est le meilleur processus pour passer de l'image 1 à l'image 2 avec un grand ensemble de données avec plus de 10 000 entrées?
r
excel
data-cleaning
Wilkoe
la source
la source
data.table
,dplyr
,plyr
etreshape2
- je recommande d' éviter les tables Excel et pivot si possible.Réponses:
Comme je l'ai noté dans mon commentaire , la question ne contient pas suffisamment de détails pour qu'une véritable réponse puisse être formulée. Puisque vous avez besoin d'aide même pour trouver les bons termes et formuler votre question, je peux parler brièvement de généralités.
Dans un certain sens, le nettoyage des données peut être effectué dans n'importe quel logiciel et peut être effectué avec Excel ou avec R. Il y aura des avantages et des inconvénients aux deux choix:
R: R nécessitera une courbe d'apprentissage abrupte. Si vous n'êtes pas très familier avec la R ou la programmation, les choses qui peuvent être faites assez rapidement et facilement dans Excel seront frustrantes à essayer dans R. D'un autre côté, si jamais vous devez recommencer, cet apprentissage aura été temps bien dépensé. De plus, la possibilité d'écrire et d'enregistrer votre code pour nettoyer les données dans R atténuera les inconvénients énumérés ci-dessus. Voici quelques liens qui vous aideront à démarrer avec ces tâches dans R:
Vous pouvez obtenir beaucoup de bonnes informations sur Stack Overflow :
Quick-R est également une ressource précieuse:
Mettre les nombres en mode numérique:
Une autre source inestimable pour en savoir plus sur R est le site Web d'aide aux statistiques de l'UCLA :
Enfin, vous pouvez toujours trouver beaucoup d'informations avec le bon vieux Google:
Mise à jour: il s'agit d'un problème courant concernant la structure de votre ensemble de données lorsque vous avez plusieurs mesures par «unité d'étude» (dans votre cas, une personne). Si vous avez une ligne pour chaque personne, vos données sont dites sous forme `` large '', mais alors vous aurez nécessairement plusieurs colonnes pour votre variable de réponse, par exemple. D'un autre côté, vous ne pouvez avoir qu'une seule colonne pour votre variable de réponse (mais avoir plusieurs lignes par personne, par conséquent), auquel cas vos données sont dites sous une forme `` longue ''. Passer d'un format à l'autre est souvent appelé «remodeler» vos données, en particulier dans le monde R.
reshape()
sur le site Web d'aide aux statistiques de l'UCLA.reshape
est difficile de travailler avec. Hadley Wickham a contribué à un package appelé reshape2 , qui vise à simplifier le processus. Le site Web personnel de Hadley pour reshape2 est ici , l'aperçu de Quick-R est ici , et il y a un joli tutoriel ici .la source
Essayez de suivre en utilisant R:
la source
Dans scala, cela s'appelle une opération "exploser" et peut être effectuée sur un dataFrame. Si vos données sont un rdd, vous devez d'abord convertir en dataFrame via la
toDF
commande, puis utiliser la.explode
méthode.la source