Je voulais joindre un fichier CSV à un fichier de formes.
Lorsque j'ai identifié un champ pour faciliter la jointure, par exemple,
map <- spChFIDs(map, as.character(map$ID))
il est revenu
Erreur dans les spChFID (SP, x): les longueurs diffèrent
Quelqu'un peut-il conseiller?
Réponses:
Voici comment vous pouvez le faire dans R en utilisant
sp::merge
la source
[.data.frame
(x @ data,, by.x, drop = FALSE): colonnes non définies sélectionnées)Je ne sais pas comment faire avec R pour joindre un fichier de formes avec un csv. Cependant, si cela peut vous aider, vous pouvez également le faire sur QGIS en utilisant le pluggin MMQGIS.
la source
Si vous travaillez dans R, votre fichier de formes et .csv doivent être chargés en tant que data.frame ou data.table. Vous pouvez utiliser join () pour les fusionner.
Avez-vous plus d'informations sur le type de fichier de formes que vous possédez?
J'ai eu la chance de faire ce qui suit lorsque je fusionne des fichiers de formes et des données. Notez que vous devez laisser l'extension .shp dans l'argument "layer". J'ai utilisé "GEOID" où vous mettriez le nom de la "forme" en question.
Ensuite, vous pouvez fusionner vos données en utilisant quelque chose comme
la source
Si vous travaillez dans R, la fusion n'est en fait pas nécessaire. Vous pouvez utiliser ggplot pour afficher vos données sur une carte. Voyez, mon exemple. Cette doublure fait des merveilles avec le fichier de forme
bangladesh = fortify(p1, region = "ADM1_EN")
. Et puis, vous pouvez utiliserEt, la carte que je reçois est ici.
la source