Hej!Données du pays: renommer les pays selon dict dans pandas
Je travaille sur une analyse de données de statistiques nationales. J'utilise maintenant des données provenant de différentes sources et, comme on l'a vu, les pays sont parfois appelés différemment: alors que la Banque mondiale l'appelle «Royaume-Uni et Irlande du Nord», l'OMS pourrait l'appeler simplement «Royaume-Uni» construction politique (je suis conscient du fait que l'Angleterre, l'Ecosse et le Pays de Galles sont les "pays" pas vraiment le Royaume-Uni).
J'ai créé un dictionnaire où j'ai pris la plupart des différents noms pour le standardiser aux données de la Banque mondiale. Cela fonctionne comme un charme dans une liste, mais j'en ai besoin dans un DataFrame pandas, que je reçois de pd.read_csv
. Dans l'exemple: Si j'ai un très court dictionnaire
dict = {'US': 'USA'}
comment puis-je traduire dans mon dataframe (régler la colonne df.country
à la valeur dict.key
)?
Affichage en exemple:
ID country val
1 US some values
à:
ID country val
1 USA some values
Pour ma conversion de liste je la construction suivante, où listB
est l'entrée et la liste de sortie:
for key in dict:
listB = [w.replace(key, dict[key]) for w in listB]
Des suggestions comment le faire le plus facilement? Toute aide serait géniale! En outre, quelqu'un a-t-il une idée de comment générer des codes ISO 3166-1 alpha-3 (comme Allemagne = GER, Suède = SWE et ainsi de suite?). Cela pourrait être une extension de la question ci-dessus.
En attendant vous grattez la page wikipedia et convertir à 'dic' – Dark
:) pas si facile; 0 – jezrael
https://gis.stackexchange.com/questions/1047/full-list-of-iso-alpha-2-and-iso-alpha-3-country-codes pourrait aider – Dark