Эй!
Я работаю над анализом некоторых данных статистики страны. Теперь я использую данные из разных источников, и, как только я заметил, страны иногда называют по-разному: в то время как Всемирный банк называет это «Соединенное Королевство и Северная Ирландия», ВОЗ может назвать это просто «Соединенное Королевство» и иметь в виду то же самое. политическая конструкция (я осведомлен о том, что Англия, Шотландия и Уэльс являются «странами», а не Великобританией).
Я создал словарь, в котором взял большинство различных имен, чтобы стандартизировать его для данных Всемирного банка. Это работает как шарм в списке, но мне он нужен в фрейме данных pandas, который я получаю от pd.read_csv
. Например: если у меня очень короткий словарь
dict = {'US': 'USA'}
как я могу перевести это в свой фрейм данных (установить столбец в df.country
на значение dict.key
)?
Показываем это в примере:
ID country val
1 US some values
to:
ID country val
1 USA some values
Для преобразования списка я использовал следующую конструкцию, где listB
- это список ввода и вывода:
for key in dict:
listB = [w.replace(key, dict[key]) for w in listB]
Есть предложения, как это сделать проще всего? Любая помощь была бы потрясающей!
P.S: Кстати, есть ли у кого-нибудь идеи, как сгенерировать коды ISO 3166-1 alpha-3 (например, Германия = Германия, Швеция = SWE и т. Д.?). Это может быть продолжением вопроса выше.