diff --git a/README.md b/README.md new file mode 100644 index 0000000..7f0772c --- /dev/null +++ b/README.md @@ -0,0 +1,57 @@ +# Foreign language or alternative location names from Geonames.org + +## An experimentation in data parsinng and processing + +In this repository, I go through some of the ways you can parse and process the location translation / altnames / alternative names / location name in a foreign language database from Geonames.org. + +The alternames database contains geoname_id, language, and the name of the location in that language. + +![CSV file](image-1.png) + +The Geonames.org dataset is quite large and a bit messy. So this repo contains: +- A [notebook](geoname_alt_names.zip) that demonstrates a data parsing process. +- A [zip file](geoname_alt_names.zip) contains the parsed and processed CSV and JSON files. + +![JSON file](image.png) + + +These files can be used in combination with IPinfo's [IP to Location database](https://ipinfo.io/products/ip-geolocation-database). Use the `geoname_id` field to look up the values from the CSV and JSON files shared in this repo. + +However, please note that Geonames.org does not provide a complete database, so be prepared for missing data. Alternatively, you can tweak the parameters of the notebook to generate your own version of parsed geoname altname/foreign language location names. + +> I highly recommend checking out the included Jupyter Notebook to understand the process of parsing this data. + +Looking up the IP location using [IPinfo IP to Location data downloads](https://ipinfo.io/products/ip-geolocation-database) + +```bash +mmdbctl read 137.93.255.181 location.mmdb +``` + +```json +{ + "city": "Oslo", + "country": "NO", + "geoname_id": "3143244", <----------------- + "lat": "59.9127", + "lng": "10.7461", + "postal_code": "0277", + "region": "Oslo", + "region_code": "03", + "timezone": "Europe/Oslo" +} +``` + +Getting the altname using the included JSON file: + +```python +>>> geoname_alt_names[geoname_id] # 3143244 + +{'pt': 'Oslo', 'en': 'Oslo', 'ko': '오슬로', 'ru': 'Осло', 'ja': 'オスロ', 'ar': 'أوسلو', 'es': 'Oslo', 'zh': '奥斯陆', 'de': 'Oslo', 'fr': 'Oslo'} +``` + + +The included notebook and databases can be used with a variety of IPinfo IP databases that include location information. + +---- + +This project utilizes data from Geonames.org, a geographical database covering all countries and containing over eleven million placenames. Geonames data is licensed under a Creative Commons Attribution 4.0 License. \ No newline at end of file diff --git a/geoname_alt_names.zip b/geoname_alt_names.zip new file mode 100644 index 0000000..208e379 Binary files /dev/null and b/geoname_alt_names.zip differ diff --git a/image-1.png b/image-1.png new file mode 100644 index 0000000..8b875d5 Binary files /dev/null and b/image-1.png differ diff --git a/image.png b/image.png new file mode 100644 index 0000000..12b4065 Binary files /dev/null and b/image.png differ diff --git a/processing_geonames_altnames.ipynb b/processing_geonames_altnames.ipynb new file mode 100644 index 0000000..2835c29 --- /dev/null +++ b/processing_geonames_altnames.ipynb @@ -0,0 +1,3238 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import duckdb as db\n", + "import json" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Download the geonames.org alternative Name Database\n", + "\n", + "- Go to https://download.geonames.org/export/dump/\n", + "- Download the `alternateNamesV2.zip`" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "alternate_names_columns = ['alternateNameId', 'geonameid', 'isolanguage', 'alternate name', 'isPreferredName', 'isShortName', 'isColloquial', 'isHistoric', 'from', 'to']\n", + "alternate_names_dtypes = {'alternateNameId': int, 'geonameid': int, 'isolanguage': str, 'alternate name': str, 'isPreferredName':str, 'isShortName':str, 'isColloquial':str, 'isHistoric':str, 'from':str, 'to': str}\n", + "filename = 'alternateNamesV2.txt'\n", + "alname_df = pd.read_csv(filename, sep='\\t', header=None, names=alternate_names_columns, dtype=alternate_names_dtypes)\n", + "alname_df.fillna('', inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
alternateNameIdgeonameidisolanguagealternate nameisPreferredNameisShortNameisColloquialisHistoricfromto
012848192994701Roc Mélé
112848202994701Roc Meler
212911973017832Pic de les Abelletes
342903873017832Pic de la Font-Nègre
412911983017833Estany de les Abelletes
\n", + "
" + ], + "text/plain": [ + " alternateNameId geonameid isolanguage alternate name \\\n", + "0 1284819 2994701 Roc Mélé \n", + "1 1284820 2994701 Roc Meler \n", + "2 1291197 3017832 Pic de les Abelletes \n", + "3 4290387 3017832 Pic de la Font-Nègre \n", + "4 1291198 3017833 Estany de les Abelletes \n", + "\n", + " isPreferredName isShortName isColloquial isHistoric from to \n", + "0 \n", + "1 \n", + "2 \n", + "3 \n", + "4 " + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "alname_df.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Processing the alternative/foreign language database" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Step 1: Preparsing\n", + "- ISO language code are 2 letters (Major filter)\n", + "- We need to remove where ISO language values are empty\n", + "- We need to remove where Geoname ID values are empty\n", + "- We need to remove where Alternative name values are empty" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
geonameidisolanguagealt_name
03038886caPic de Tristaina
13038899caTossalet i Vinyals
23038914caCanal de la Tosa
33038995caBosc del Solobre
43039037caSolà d’Engordany
\n", + "
" + ], + "text/plain": [ + " geonameid isolanguage alt_name\n", + "0 3038886 ca Pic de Tristaina\n", + "1 3038899 ca Tossalet i Vinyals\n", + "2 3038914 ca Canal de la Tosa\n", + "3 3038995 ca Bosc del Solobre\n", + "4 3039037 ca Solà d’Engordany" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "alname_df_all_values = db.sql(\"\"\"SELECT geonameid, isolanguage, \"alternate name\" as alt_name\n", + "FROM alname_df\n", + "WHERE geonameid is not null\n", + "AND isolanguage !=''\n", + "AND alt_name !='' \n", + "AND LENGTH(isolanguage) <= 2\n", + "\"\"\").df()\n", + "alname_df_all_values.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Optional Step 1: Taking a look at the top 20 listed languages in the database (Disclaimer in step 3)" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
isolanguagelng_count
0zh1008392
1en728195
2no691172
3es556830
4ru546593
5fa517259
6id396136
7ar304521
8th265978
9ja196185
10fr152656
11fi139919
12ko139003
13uk126704
14pt95756
15de87443
16hy77986
17sr64587
18el56444
19mk56342
\n", + "
" + ], + "text/plain": [ + " isolanguage lng_count\n", + "0 zh 1008392\n", + "1 en 728195\n", + "2 no 691172\n", + "3 es 556830\n", + "4 ru 546593\n", + "5 fa 517259\n", + "6 id 396136\n", + "7 ar 304521\n", + "8 th 265978\n", + "9 ja 196185\n", + "10 fr 152656\n", + "11 fi 139919\n", + "12 ko 139003\n", + "13 uk 126704\n", + "14 pt 95756\n", + "15 de 87443\n", + "16 hy 77986\n", + "17 sr 64587\n", + "18 el 56444\n", + "19 mk 56342" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "db.sql('''\n", + "SELECT isolanguage, count(*) lng_count\n", + "FROM alname_df_all_values\n", + "GROUP BY isolanguage\n", + "ORDER BY lng_count DESC\n", + "LIMIT 20\n", + "''').df()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Step 2: Only picking out 10 languages" + ] + }, + { + "cell_type": "code", + "execution_count": 114, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
geonameidisolanguagealt_name
08210545enRegans Lagoon
18210546enRegents Lake
28210547enRound Lake
38210548enLake Ricketson
48210549enRitchies Lagoon
............
38155697668943enTiger Cave Temple
38155707730329enKhok Kathiam Airport
38155717730329enKoke Kathiem Airport
38155727778911enJames Bond Island
38155737793027enDoi Tao Lake
\n", + "

3815574 rows × 3 columns

\n", + "
" + ], + "text/plain": [ + " geonameid isolanguage alt_name\n", + "0 8210545 en Regans Lagoon\n", + "1 8210546 en Regents Lake\n", + "2 8210547 en Round Lake\n", + "3 8210548 en Lake Ricketson\n", + "4 8210549 en Ritchies Lagoon\n", + "... ... ... ...\n", + "3815569 7668943 en Tiger Cave Temple\n", + "3815570 7730329 en Khok Kathiam Airport\n", + "3815571 7730329 en Koke Kathiem Airport\n", + "3815572 7778911 en James Bond Island\n", + "3815573 7793027 en Doi Tao Lake\n", + "\n", + "[3815574 rows x 3 columns]" + ] + }, + "execution_count": 114, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# 10 Languages selected: 'zh', 'en', 'es', 'fr', 'ja', 'pt', 'ru', 'de', 'ar', 'ko'\n", + "alname_df_all_values_selected = db.sql('''\n", + "SELECT *\n", + "FROM alname_df_all_values\n", + "WHERE isolanguage in ('zh', 'en', 'es', 'fr', 'ja', 'pt', 'ru', 'de', 'ar', 'ko')\n", + "''').df()\n", + "alname_df_all_values_selected" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Step 3: Taking the first alt name by each language\n", + "- Geonames have multiple entries for the same language and same location. There could be dozens of alternative names for the same location within the same language." + ] + }, + { + "cell_type": "code", + "execution_count": 115, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
geonameidisolanguagealt_name
0650ruБастак
11816arحبات نزال
22106arمطار رشت الدولي
32254arوادي غدير الحمل
42287arالفياضية
............
342481312746130ko인천광역시역사자료관
342481412746165ko수산물품관리원인천지원
342481512746177ko송학동삼가
342481612746201ko한국근대문학관
342481712746246jaしょうふくじちょくしもん
\n", + "

3424818 rows × 3 columns

\n", + "
" + ], + "text/plain": [ + " geonameid isolanguage alt_name\n", + "0 650 ru Бастак\n", + "1 1816 ar حبات نزال\n", + "2 2106 ar مطار رشت الدولي\n", + "3 2254 ar وادي غدير الحمل\n", + "4 2287 ar الفياضية\n", + "... ... ... ...\n", + "3424813 12746130 ko 인천광역시역사자료관\n", + "3424814 12746165 ko 수산물품관리원인천지원\n", + "3424815 12746177 ko 송학동삼가\n", + "3424816 12746201 ko 한국근대문학관\n", + "3424817 12746246 ja しょうふくじちょくしもん\n", + "\n", + "[3424818 rows x 3 columns]" + ] + }, + "execution_count": 115, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "alname_df_all_values_selected_only_first_loc = db.sql('''WITH RankedRows AS (\n", + " SELECT *,\n", + " ROW_NUMBER() OVER (PARTITION BY geonameid, isolanguage) AS row_num\n", + " FROM alname_df_all_values_selected\n", + ")\n", + "SELECT geonameid, isolanguage, alt_name\n", + "FROM RankedRows\n", + "WHERE row_num = 1;\n", + "''').df()\n", + "alname_df_all_values_selected_only_first_loc" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Step 4: Choose English as one of the mandatory listed languages.\n", + "- If English is not listed for a particular geoname entry, we will not select it." + ] + }, + { + "cell_type": "code", + "execution_count": 116, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
geonameidisolanguagealt_name
011592844enPybus
111593903enSouthwestern Washington Experiment Station
211594363enPiana Rocks Lighthouse
311608472enSantana do Livramento
411608475enSan Pedro Pochutla Airport
............
9449628556013enWindarling Mine
9449638562582enTakaiwa Tunnel
9449648436037esEstación de Ronda
9449658538664enMount Kanigan
9449668507553zh黄花农场十一队
\n", + "

944967 rows × 3 columns

\n", + "
" + ], + "text/plain": [ + " geonameid isolanguage alt_name\n", + "0 11592844 en Pybus\n", + "1 11593903 en Southwestern Washington Experiment Station\n", + "2 11594363 en Piana Rocks Lighthouse\n", + "3 11608472 en Santana do Livramento\n", + "4 11608475 en San Pedro Pochutla Airport\n", + "... ... ... ...\n", + "944962 8556013 en Windarling Mine\n", + "944963 8562582 en Takaiwa Tunnel\n", + "944964 8436037 es Estación de Ronda\n", + "944965 8538664 en Mount Kanigan\n", + "944966 8507553 zh 黄花农场十一队\n", + "\n", + "[944967 rows x 3 columns]" + ] + }, + "execution_count": 116, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "alname_df_all_values_selected_only_first_loc_en_filtered = db.sql('''\n", + "SELECT t2.*\n", + "FROM alname_df_all_values_selected_only_first_loc t2\n", + "JOIN (\n", + "SELECT geonameid\n", + "FROM alname_df_all_values_selected_only_first_loc\n", + "WHERE isolanguage = 'en') t1\n", + "ON t2.geonameid = t1.geonameid\n", + "''').df()\n", + "alname_df_all_values_selected_only_first_loc_en_filtered" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Optional Step 2: Test how many languages are there for each geoname entry" + ] + }, + { + "cell_type": "code", + "execution_count": 155, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
count_langlang_group_count
0104150
191650
284334
372545
462666
553839
646798
7312548
8291567
91552969
\n", + "
" + ], + "text/plain": [ + " count_lang lang_group_count\n", + "0 10 4150\n", + "1 9 1650\n", + "2 8 4334\n", + "3 7 2545\n", + "4 6 2666\n", + "5 5 3839\n", + "6 4 6798\n", + "7 3 12548\n", + "8 2 91567\n", + "9 1 552969" + ] + }, + "execution_count": 155, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "db.sql('''\n", + "SELECT count_lang, count(*) as lang_group_count\n", + "FROM (\n", + "\tSELECT geonameid, count(*) as count_lang\n", + "\tFROM alname_df_all_values_selected_only_first_loc_en_filtered\n", + "\tGROUP BY geonameid\n", + "\tORDER BY count_lang DESC\n", + ")\n", + "GROUP BY count_lang\n", + "ORDER BY count_lang DESC\n", + "''').df()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Optional Step 3: Minimum number of required languages\n", + "- If you want a tabular output select the max languges in the input language array (which is 10).\n", + "- Here as an example we can select geonames with more than 5 alt names" + ] + }, + { + "cell_type": "code", + "execution_count": 158, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
geonameidisolanguagealt_name
0895949esZambia
1896140ptProvíncia Ocidental
2899274frSamfya
3912764jaカサマ
4921780deMohéli
............
14402397990frBakouba
144024119505enQazvin
144025119505ko카즈빈
144026124763esMarkazi
144027128231ruКерман
\n", + "

144028 rows × 3 columns

\n", + "
" + ], + "text/plain": [ + " geonameid isolanguage alt_name\n", + "0 895949 es Zambia\n", + "1 896140 pt Província Ocidental\n", + "2 899274 fr Samfya\n", + "3 912764 ja カサマ\n", + "4 921780 de Mohéli\n", + "... ... ... ...\n", + "144023 97990 fr Bakouba\n", + "144024 119505 en Qazvin\n", + "144025 119505 ko 카즈빈\n", + "144026 124763 es Markazi\n", + "144027 128231 ru Керман\n", + "\n", + "[144028 rows x 3 columns]" + ] + }, + "execution_count": 158, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "db.sql('''\n", + "SELECT t1.*\n", + "FROM alname_df_all_values_selected_only_first_loc_en_filtered t1\n", + "JOIN (\n", + "\tSELECT geonameid, count(*) as count_lang\n", + "\tFROM alname_df_all_values_selected_only_first_loc_en_filtered\n", + "\tGROUP BY geonameid\n", + ") t2\n", + "ON t1.geonameid = t2.geonameid\n", + "WHERE t2.count_lang > 4\n", + "''').df()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Optional Step 4: JSONification of the language and alt_names\n", + "- The dictionary represented in a JSON like string" + ] + }, + { + "cell_type": "code", + "execution_count": 120, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
geonameidiso_language_alt_names
014{\"ar\": \"تخت أرة دو\", \"en\": \"Takht Arreh Do\"}
1254{\"ar\": \"جسر بالارود\", \"en\": \"Pol-e Bala Rud\"}
2301{\"en\": \"Shahr-e Ziba\", \"fr\": \"Shahr-e ziba\"}
3470{\"ja\": \"アーザーディー広場\", \"ru\": \"Площадь Азади\", \"en...
4566{\"en\": \"Rudafshan Cave\", \"es\": \"Ghar-e-Roodafs...
.........
68306112746714{\"en\": \"Bosiljevo interchange\"}
68306212746729{\"en\": \"Ringwood Magistrates Court\"}
68306312746744{\"en\": \"Appleton Dock\"}
68306412746795{\"ja\": \"葛城地蔵・将軍地蔵\", \"en\": \"Katsuragi Kṣitigarb...
68306512746811{\"en\": \"The Line\", \"de\": \"The Line\", \"ar\": \"ذا...
\n", + "

683066 rows × 2 columns

\n", + "
" + ], + "text/plain": [ + " geonameid iso_language_alt_names\n", + "0 14 {\"ar\": \"تخت أرة دو\", \"en\": \"Takht Arreh Do\"}\n", + "1 254 {\"ar\": \"جسر بالارود\", \"en\": \"Pol-e Bala Rud\"}\n", + "2 301 {\"en\": \"Shahr-e Ziba\", \"fr\": \"Shahr-e ziba\"}\n", + "3 470 {\"ja\": \"アーザーディー広場\", \"ru\": \"Площадь Азади\", \"en...\n", + "4 566 {\"en\": \"Rudafshan Cave\", \"es\": \"Ghar-e-Roodafs...\n", + "... ... ...\n", + "683061 12746714 {\"en\": \"Bosiljevo interchange\"}\n", + "683062 12746729 {\"en\": \"Ringwood Magistrates Court\"}\n", + "683063 12746744 {\"en\": \"Appleton Dock\"}\n", + "683064 12746795 {\"ja\": \"葛城地蔵・将軍地蔵\", \"en\": \"Katsuragi Kṣitigarb...\n", + "683065 12746811 {\"en\": \"The Line\", \"de\": \"The Line\", \"ar\": \"ذا...\n", + "\n", + "[683066 rows x 2 columns]" + ] + }, + "execution_count": 120, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "alname_df_all_values_selected_only_first_loc_en_filtered_jsonified = alname_df_all_values_selected_only_first_loc_en_filtered.groupby('geonameid').apply(lambda x: json.dumps(dict(zip(x['isolanguage'], x['alt_name'])), ensure_ascii=False)).reset_index()\n", + "alname_df_all_values_selected_only_first_loc_en_filtered_jsonified.columns = ['geonameid', 'iso_language_alt_names']\n", + "alname_df_all_values_selected_only_first_loc_en_filtered_jsonified" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Step 6: Converting the dataset in to Python Dictionary for JSON output" + ] + }, + { + "cell_type": "code", + "execution_count": 133, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{14: {'ar': 'تخت أرة دو', 'en': 'Takht Arreh Do'},\n", + " 254: {'ar': 'جسر بالارود', 'en': 'Pol-e Bala Rud'},\n", + " 301: {'en': 'Shahr-e Ziba', 'fr': 'Shahr-e ziba'},\n", + " 470: {'ja': 'アーザーディー広場',\n", + " 'ru': 'Площадь Азади',\n", + " 'en': 'Azadi Square',\n", + " 'fr': 'place Azadi',\n", + " 'ar': 'ميدان آزادي',\n", + " 'pt': 'Praça Azadi',\n", + " 'zh': '阿扎迪广场'},\n", + " 566: {'en': 'Rudafshan Cave',\n", + " 'es': 'Ghar-e-Roodafshan',\n", + " 'ar': 'كهف رودافشان الأثري',\n", + " 'fr': 'Ghar-e-Roodafshan',\n", + " 'de': 'Ghar-e-Roodafshan'},\n", + " 677: {'en': 'Azadi Stadium',\n", + " 'ko': '아자디 경기장',\n", + " 'ru': 'Азади',\n", + " 'de': 'Azadi-Stadion',\n", + " 'zh': '阿薩迪體育場',\n", + " 'fr': 'stade Azadi',\n", + " 'ja': 'アザディ・スタジアム',\n", + " 'pt': 'Estádio Azadi',\n", + " 'ar': 'ملعب آزادي',\n", + " 'es': 'Estadio Azadi'},\n", + " 820: {'ar': 'بلوط بازه', 'en': 'Balut Bazeh'},\n", + " 1102: {'en': 'Sefidestan'},\n", + " 1226: {'en': 'Zeyn ol Hajjilu', 'ar': 'زين\\u200c الحاجيلو'},\n", + " 1248: {'ar': 'سنوكش', 'en': 'Senowkesh'},\n", + " 1253: {'ar': 'تازة كند خوشة مهر', 'en': 'Tazeh Kand-e Khusheh Mehr'},\n", + " 1424: {'ar': 'سیاه برة', 'en': 'Siah Pareh'},\n", + " 1624: {'en': 'Galleh Kola'},\n", + " 1860: {'en': 'Tang-e Mohammad Haji', 'ar': 'تنغ محمد حاجی'},\n", + " 2028: {'en': 'Darreh Bidad-e Olya', 'ar': 'درة بیداد العلیا'},\n", + " 2081: {'en': 'Aqa Vali'},\n", + " 2085: {'en': 'Alir'},\n", + " 2106: {'fr': 'aéroport de Racht',\n", + " 'ja': 'ラシュト',\n", + " 'ar': 'مطار رشت الدولي',\n", + " 'en': 'Rasht Airport',\n", + " 'zh': '拉什特'},\n", + " 2152: {'ar': 'کیا کلایة', 'en': 'Kia Kalayeh'},\n", + " 2200: {'ar': 'قیة تشمن', 'en': 'Qarah Chaman'},\n", + " 2205: {'ar': 'ناوند', 'en': 'Navand'},\n", + " 2209: {'en': 'Khalifeh Kandi-ye Hatam', 'ar': 'خليفة كندي حاتم'},\n", + " 2213: {'ar': 'كهبان', 'en': 'Kohban'},\n", + " 2233: {'en': 'Baranqar', 'ar': 'برانقار'},\n", + " 3008: {'en': 'Vaysian'},\n", + " 3122: {'ar': 'بزهي', 'en': 'Bezhi'},\n", + " 3149: {'en': 'Kani Chulkeh', 'ar': 'كاني تشولكة'},\n", + " 3212: {'en': 'Malateh', 'ar': 'مالتة'},\n", + " 3370: {'ar': 'أقبال', 'en': 'Aqbal'},\n", + " 3419: {'ar': 'آغاسور، مهاباد', 'en': 'Aghasur'},\n", + " 3445: {'ar': 'زیر أندول', 'en': 'Zir Andul'},\n", + " 3456: {'ar': 'نادر غلي', 'en': 'Nader Goli'},\n", + " 3521: {'ar': 'شريفلو', 'en': 'Shariflu'},\n", + " 3594: {'en': 'Turchi', 'ar': 'تورتشي'},\n", + " 3712: {'en': 'Gonbadi', 'ar': 'غنبدي'},\n", + " 4105: {'en': 'Tabriz Khatun', 'ar': 'تبريزخاتون'},\n", + " 4746: {'ru': 'Ларнакский замок',\n", + " 'en': 'Larnaca Castle',\n", + " 'ar': 'قلعة لارنكا',\n", + " 'es': 'Castillo de Lárnaca',\n", + " 'de': 'Burg Larnaca',\n", + " 'ja': 'ラルナカ城'},\n", + " 4867: {'ja': 'ヒロキティア',\n", + " 'fr': 'Choirokoitia',\n", + " 'es': 'Khirokitia',\n", + " 'de': 'Chirokitia',\n", + " 'ru': 'Хирокития',\n", + " 'en': 'Khirokitia',\n", + " 'zh': '乔伊鲁科蒂亚',\n", + " 'ar': 'شويروكويتا',\n", + " 'pt': 'Choirokoitia'},\n", + " 5428: {'ja': 'ゴルガーン空港',\n", + " 'fr': 'aéroport de Gorgan',\n", + " 'en': 'Gorgan Airport',\n", + " 'zh': '戈爾甘機場'},\n", + " 5593: {'en': 'Aftabru'},\n", + " 5658: {'ar': 'سد كوريس', 'zh': '库里斯水坝', 'en': 'Kouris Dam'},\n", + " 5673: {'en': 'Katalynata ton Plakoton'},\n", + " 5721: {'ja': 'コロッシ城',\n", + " 'es': 'Castillo de Kolossi',\n", + " 'ru': 'Замок Колосси',\n", + " 'de': 'Kolossi',\n", + " 'en': 'Kolossi Castle',\n", + " 'fr': 'château de Colosse'},\n", + " 5776: {'en': 'Germasogeia Dam'},\n", + " 5783: {'en': 'Polemidia Camp'},\n", + " 5788: {'en': 'Polemidia Dam'},\n", + " 5972: {'ar': 'شورابه\\u200cخوران', 'en': 'Shurabeh Khuran'},\n", + " 6203: {'en': 'Satian', 'ar': 'ساتيان'},\n", + " 6224: {'en': 'Nahrkhan-e Sofla', 'ar': 'نهرخان سفلي'},\n", + " 6231: {'en': 'Lashekan'},\n", + " 6257: {'en': 'Choqa Mahi', 'ar': 'تشقاماهي'},\n", + " 6292: {'en': 'Shur Su'},\n", + " 6346: {'en': 'Yazdu'},\n", + " 6352: {'en': 'Puyeh'},\n", + " 6367: {'en': 'Dezian'},\n", + " 6549: {'en': 'Estar Khu'},\n", + " 6550: {'en': 'Davarzan County'},\n", + " 6565: {'en': 'Abu ol Hasani'},\n", + " 6637: {'en': 'Farinu-ye Bala'},\n", + " 6901: {'ar': 'السلحبية غربية', 'en': 'Western Sahlabiyeh'},\n", + " 6928: {'en': 'Nowveh'},\n", + " 6934: {'en': 'Faridar'},\n", + " 6942: {'en': 'Tuchah', 'ar': 'توتشاه'},\n", + " 6949: {'ar': 'سینغ', 'en': 'Seyang'},\n", + " 7178: {'en': 'Naveshk'},\n", + " 7245: {'en': 'Gom Eshaq', 'ar': 'غم إسحاق'},\n", + " 7299: {'ar': 'بهار سفلي', 'en': 'Bahar-e Sofla'},\n", + " 7726: {'ar': 'كاريزدر', 'en': 'Karizdar'},\n", + " 7777: {'ar': 'ورزن', 'ru': 'Верзен', 'en': 'Varzan'},\n", + " 7854: {'en': 'Pol-e khab'},\n", + " 7944: {'ar': 'کلاکسار', 'en': 'Kolaksar'},\n", + " 8000: {'ar': 'همة جا', 'ru': 'Хемеджа', 'en': 'Hameh Ja'},\n", + " 8101: {'ar': 'أزادبر', 'en': 'Azadbar', 'ru': 'Азадбер'},\n", + " 8102: {'en': 'Ayegan', 'ar': 'أیغان'},\n", + " 8596: {'en': 'Shahrara', 'fr': 'Shahrara'},\n", + " 8617: {'en': 'Sang-e Tajan'},\n", + " 8685: {'en': 'Najjar Deh'},\n", + " 8816: {'en': 'Ezbaran', 'ar': 'إيزباران'},\n", + " 9371: {'en': 'Mahuteh'},\n", + " 9373: {'en': 'Sar Poleh'},\n", + " 9463: {'en': 'Qezlar'},\n", + " 9465: {'en': 'Qezel Hesar-e Bala'},\n", + " 9501: {'en': 'Kalateh-ye Tashi'},\n", + " 9529: {'en': 'Cheshmeh Tabari'},\n", + " 9534: {'en': 'Chapeh'},\n", + " 9542: {'en': 'Barazarlu'},\n", + " 9545: {'en': 'Baliqayeh'},\n", + " 9546: {'en': 'Baba Shamalek'},\n", + " 9552: {'en': 'Anabay', 'ar': 'أناباي'},\n", + " 9554: {'en': 'Amanli', 'ar': 'أمانلي'},\n", + " 9704: {'en': 'Tazeh Yab'},\n", + " 9725: {'en': 'Qarah Aqaj-e Bala'},\n", + " 9752: {'en': 'Kalateh-ye Hajj Rahmat'},\n", + " 9774: {'en': 'Hamzak'},\n", + " 9804: {'en': 'Yasan'},\n", + " 9807: {'en': 'Bavers'},\n", + " 9832: {'en': 'Viar'},\n", + " 10123: {'ru': 'Мираш', 'ar': 'ميراش', 'en': 'Mirash'},\n", + " 10154: {'ru': 'Лашкан', 'en': 'Lashkan'},\n", + " 10205: {'ru': 'Хводкавенд', 'en': 'Khvodkavand', 'ar': 'خودكاوند'},\n", + " 10236: {'ar': 'کشمش', 'zh': '凱什梅什村', 'en': 'Keshmesh'},\n", + " 10255: {'ar': 'كرود', 'en': 'Karud'},\n", + " 10309: {'en': 'Jaliseh'},\n", + " 10350: {'en': 'Hajji Tappeh', 'ar': 'حاجي تبة'},\n", + " 10409: {'en': 'Espahabdan'},\n", + " 10502: {'en': 'Bezaj', 'ru': 'Безедж', 'ar': 'بزج'},\n", + " 10523: {'en': 'Balaband'},\n", + " 10526: {'en': 'Bagh Kalayeh'},\n", + " 10533: {'en': 'Azrat'},\n", + " 10546: {'ru': 'Ардехе', 'ar': 'أردهة', 'en': 'Ardaheh'},\n", + " 10555: {'ar': 'أنغة', 'en': 'Angeh'},\n", + " 10557: {'en': 'Andaj'},\n", + " 10578: {'ar': 'أهوارك', 'en': 'Ahvarak'},\n", + " 10606: {'en': 'Ajin Dojin', 'ar': 'أجين دوجين', 'ru': 'Аджин-Доджин'},\n", + " 10611: {'en': 'Aftab Dar'},\n", + " 10675: {'en': 'Shaqaqi-ye Jezla'},\n", + " 10818: {'en': 'Gholam Cham'},\n", + " 11080: {'en': 'Bur Khani'},\n", + " 11258: {'en': 'Shami Kola'},\n", + " 11288: {'en': 'Seraj Kola'},\n", + " 11426: {'en': 'Monqar Pey', 'ar': 'منغار بي'},\n", + " 11602: {'en': 'Gol Bestan'},\n", + " 11706: {'ar': 'بونة كنار', 'en': 'Boneh Kenar'},\n", + " 11726: {'en': 'Bala Sang Rizeh'},\n", + " 11801: {'en': 'Ab Bandan Kash'},\n", + " 11806: {'en': 'Heydar Kola', 'ar': 'حيدر كلا'},\n", + " 11852: {'fr': 'centrale électrique de Moni', 'en': 'Moni Power Station'},\n", + " 11991: {'en': 'Asprokremmos Dam'},\n", + " 12715: {'en': 'Dalas', 'es': 'Dalas'},\n", + " 13101: {'ar': 'وجني', 'en': 'Vejeni', 'ru': 'Пичан'},\n", + " 13108: {'ar': 'طويقون', 'en': 'Tuyqun'},\n", + " 13111: {'ar': 'ترانتشة', 'en': 'Tarancheh'},\n", + " 13119: {'en': 'Tazeh Kand-e Hajjikhan'},\n", + " 13124: {'ar': 'تویلة شامي', 'en': 'Tavileh-ye Shami'},\n", + " 13126: {'en': 'Sulakhlu'},\n", + " 13129: {'en': 'Shonqushabad', 'ar': 'شنقوش أباد'},\n", + " 13135: {'en': 'Shater Gonbadi'},\n", + " 13139: {'en': 'Shirbit', 'ar': 'شيربيت'},\n", + " 13141: {'en': 'Sheylavan'},\n", + " 13146: {'en': 'Sargiv'},\n", + " 13149: {'en': 'Sati-ye Vosta'},\n", + " 13150: {'ar': 'ساطي سفلي', 'en': 'Sati-ye Sofla'},\n", + " 13164: {'en': 'Ravasjan', 'ar': 'رواسجان'},\n", + " 13176: {'en': 'Qarah Masjed', 'ar': 'قرة مسجد'},\n", + " 13183: {'en': 'Parijan', 'ar': 'بريجان'},\n", + " 13188: {'en': 'Pireh Yusefian-e Sofla', 'ar': 'بيرة يوسفيان سفلي'},\n", + " 13192: {'ar': 'نقدي', 'en': 'Noqadi'},\n", + " 13197: {'en': 'Naqqareh Kub-e Qadim', 'ar': 'نقارة كوب قدیم'},\n", + " 13200: {'en': 'Monjuqchi'},\n", + " 13220: {'en': 'Kut Tappeh'},\n", + " 13224: {'en': 'Kord Tappeh'},\n", + " 13227: {'en': 'Kolujeh'},\n", + " 13228: {'en': 'Kohneh Kand', 'ar': 'كهنة كند'},\n", + " 13236: {'en': 'Khamunli'},\n", + " 13251: {'en': 'Kalim Bolagh'},\n", + " 13257: {'en': 'Joghanab-e Sofla', 'ar': 'جغناب سفلي'},\n", + " 13268: {'en': 'Ilkadeh', 'ar': 'ايلكدة'},\n", + " 13283: {'en': 'Garichi'},\n", + " 13285: {'en': 'Gandom Nan', 'ar': 'غندم\\u200c نان'},\n", + " 13309: {'ar': 'ديزبين', 'en': 'Dizbin'},\n", + " 13310: {'ar': 'ديزج شور', 'en': 'Dizaj-e Shur'},\n", + " 13313: {'ar': 'تشونغنش', 'en': 'Choqungonash'},\n", + " 13317: {'ar': 'تشبقان', 'en': 'Chapaqan'},\n", + " 13318: {'en': 'Chang Darreh'},\n", + " 13321: {'ar': 'تشاخر تشمني', 'en': 'Chahar Chaman'},\n", + " 13325: {'en': 'Chagoli Bolagh'},\n", + " 13332: {'en': 'Barcheh'},\n", + " 13337: {'en': 'Balluqiyeh', 'ar': 'بالو قية'},\n", + " 13349: {'en': 'Angiz', 'ar': 'أنغيز'},\n", + " 13351: {'en': 'Anbaq-e Javad', 'ar': 'أنباق جواد'},\n", + " 13354: {'en': 'Allah Yarlu', 'ar': 'الله يارلو'},\n", + " 13359: {'en': 'Atmeyan-e Sofla', 'ar': 'أتميان سفلي'},\n", + " 13373: {'en': 'Zardughan', 'ar': 'زردوغان'},\n", + " 13375: {'en': 'Zaglik-e Kurbolagh', 'ar': 'زغليك كوربلاغ'},\n", + " 13379: {'en': 'Zirian', 'ar': 'زيريان'},\n", + " 13383: {'en': 'Yagh Bastlu', 'ar': 'ياغ بستلو'},\n", + " 13384: {'en': 'Vanehabad', 'ar': 'ونة أباد'},\n", + " 13385: {'en': 'Vizanab', 'ar': 'ویزاناب'},\n", + " 13386: {'en': 'Vieq', 'ar': 'ویق'},\n", + " 13408: {'en': 'Tumar Darrahsi-ye Sofla'},\n", + " 13411: {'ar': 'سوتات', 'en': 'Sutat'},\n", + " 13414: {'en': 'Shureh Nab', 'ar': 'شورة ناب'},\n", + " 13415: {'ar': 'شيخ رضي', 'en': 'Sheykh Razi'},\n", + " 13418: {'ar': 'شیخ بوران', 'en': 'Sheykh Boran'},\n", + " 13421: {'en': 'Shalvari', 'ar': 'شلواري'},\n", + " 13425: {'en': 'Shir Mardan', 'ar': 'شير مردان'},\n", + " 13431: {'ar': 'سيد جوادلو', 'en': 'Seyyed Javadlu'},\n", + " 13432: {'en': 'Sehriq', 'ar': 'سهريق'},\n", + " 13437: {'en': 'Sari Suli', 'ar': 'ساري سولي'},\n", + " 13440: {'en': 'Sachlu', 'ar': 'ساتشلو'},\n", + " 13443: {'en': 'Samsam Kandi', 'ar': 'صمصام\\u200c كندي'},\n", + " 13444: {'en': 'Safi Khanlu', 'ar': 'صافي خانلو'},\n", + " 13454: {'ar': 'قتانلو', 'en': 'Qotanlu'},\n", + " 13457: {'ar': 'قشلاق ذاخر', 'en': 'Qeshlaq-e Zakhor'},\n", + " 13460: {'en': 'Qeshlaq-e Najaf Khanlu', 'ar': 'قشلاق نجف خانلو'},\n", + " 13469: {'ar': 'قليتش خانلو', 'en': 'Qelich Khanlu'},\n", + " 13471: {'ar': 'قية قشلاق', 'en': 'Qayeh Qeshlaq'},\n", + " 13484: {'en': 'Qarah Jelu', 'ar': 'قراجة لو'},\n", + " 13509: {'en': 'Ordukhan Kandi', 'ar': 'أردو خان كندي'},\n", + " 13510: {'en': 'Ojaq Qeshlaqi'},\n", + " 13514: {'en': 'Niazqoli'},\n", + " 13515: {'ar': 'مرده كتان', 'en': 'Mordeh Katan'},\n", + " 13519: {'en': 'Molk-e Daraq', 'ar': 'ملك درق'},\n", + " 13525: {'ar': 'ملخاص', 'en': 'Melkhas'},\n", + " 13535: {'ar': 'مياندرق', 'en': 'Miandaraq'},\n", + " 13536: {'en': 'Mian Bazur', 'ar': 'ميان\\u200c بازور'},\n", + " 13539: {'en': 'Lachin Darrehsi', 'ar': 'لاتشين درهسي'},\n", + " 13542: {'en': 'Kordlaqan', 'ar': 'کردلقان'},\n", + " 13546: {'en': 'Khvoy Narud', 'ar': 'خوينرود'},\n", + " 13548: {'en': 'Khubyarlu', 'ar': 'خوبيارلو'},\n", + " 13551: {'en': 'Kharabeh-ye Qaderlu'},\n", + " 13553: {'en': 'Khalfian', 'ar': 'خلفیان'},\n", + " 13556: {'en': 'Khaneh-ye Khosrow', 'ar': 'خانة خسرو'},\n", + " 13559: {'ar': 'كيقباد', 'en': 'Keyqobad'},\n", + " 13571: {'en': 'Kalanpa', 'ar': 'کلانپا'},\n", + " 13578: {'en': 'Kin Ab', 'ar': 'کند أب'},\n", + " 13581: {'ar': 'جوان شیخ', 'en': 'Javan Sheykh'},\n", + " 13586: {'ar': 'جين كندي', 'de': 'Jin Kandi', 'en': 'Jin Kandi'},\n", + " 13592: {'ar': 'هيب سفلي', 'en': 'Heybat-e Sofla'},\n", + " 13596: {'ar': 'هراسبان', 'en': 'Harasban'},\n", + " 13597: {'ar': 'هوري درق', 'en': 'Huri Daraq'},\n", + " 13598: {'ar': 'حسين خانلو', 'en': 'Hoseyn Khanlu'},\n", + " 13599: {'en': 'Hoseyn Kandi', 'ar': 'حسين كندي'},\n", + " 13601: {'ar': 'حصارسيد لر', 'en': 'Hesar-e Seyyedlar'},\n", + " 13603: {'en': 'Hasan Beyglu', 'ar': 'حسن\\u200c بيغلو'},\n", + " 13606: {'ar': 'حاج سيفلو', 'en': 'Hajji Seyflu'},\n", + " 13611: {'en': 'Gurom Daraq', 'ar': 'غورم درق'},\n", + " 13615: {'en': 'Goldaraq', 'ar': 'غلدرق'},\n", + " 13616: {'ar': 'غفار كندي', 'en': 'Ghaffar Kandi'},\n", + " 13617: {'en': 'Gerdeh Gol'},\n", + " 13618: {'ar': 'غردة سنغ', 'en': 'Gerdah Sang'},\n", + " 13624: {'en': 'Galasan Gurasan'},\n", + " 13626: {'ar': 'جاموش أولن سفلي', 'en': 'Jamush Olan-e Sofla'},\n", + " 13628: {'en': 'Gavdel', 'ar': 'غاو دل'},\n", + " 13629: {'ar': 'إسلام كندي', 'en': 'Eslam Kandi'},\n", + " 13630: {'ar': 'دوريق', 'en': 'Duriq'},\n", + " 13633: {'en': 'Dughan', 'ar': 'دوغان'},\n", + " 13635: {'ar': 'ديلم\\u200c شاه', 'en': 'Deylamshah'},\n", + " 13636: {'en': 'Delqanab', 'ar': 'دلقناب'},\n", + " 13643: {'en': 'Dagh Kandi'},\n", + " 13644: {'en': 'Dizaj-e Talkhaj', 'ar': 'ديزج تلخاج'},\n", + " 13645: {'en': 'Dizaj-e Sefid', 'ar': 'ديزج سفيد'},\n", + " 13646: {'en': 'Dizaj-e Jalu', 'ar': 'ديزج جالو'},\n", + " 13647: {'ar': 'ديكدرق', 'en': 'Dikdaraq'},\n", + " 13654: {'ar': 'تشیناب', 'en': 'Chinab'},\n", + " 13658: {'ar': 'تشرمة دش', 'en': 'Charmeh Dash'},\n", + " 13664: {'en': 'Beneh Lar'},\n", + " 13665: {'ar': 'بنة ديق', 'en': 'Benahdiq'},\n", + " 13669: {'en': 'Bal Daghi', 'ar': 'بال درق'},\n", + " 13670: {'ar': 'باغلار', 'en': 'Baghlar'},\n", + " 13675: {'en': 'Andab-e Jadid', 'ar': 'أنداب جديد'},\n", + " 13677: {'ar': 'أنباق حاجي خان', 'en': 'Anbaq-e Hajjikhan'},\n", + " 13680: {'ar': 'احدبيغلو', 'en': 'Ahad Beyglu'},\n", + " 13684: {'en': 'Avalan', 'ar': 'عوالان'},\n", + " 13686: {'en': 'As-e Jadid', 'ar': 'أس جديد'},\n", + " 13690: {'en': 'Aqdaraq-e Qadim', 'ar': 'أق\\u200c درق قديم'},\n", + " 13691: {'en': 'Aqdaraq-e Jadid', 'ar': 'أق\\u200c درق جديد'},\n", + " 13698: {'en': 'Ampar', 'ar': 'أمبار'},\n", + " 13700: {'en': 'Alpavat', 'ar': 'ألباوت'},\n", + " 13701: {'ar': 'الپاويت', 'en': 'Alpavit'},\n", + " 13703: {'en': 'Adam Darrehsi-ye Sofla', 'ar': 'أدم درهسي سفلي'},\n", + " 13863: {'en': 'Afshjerd'},\n", + " 13885: {'en': 'Araz'},\n", + " 14112: {'ar': 'جوزار', 'en': 'Javzar'},\n", + " 14152: {'ar': 'بزغالة', 'en': 'Bozghaleh'},\n", + " 14172: {'en': 'Emamqoli Kandi-ye Sofla', 'ar': 'امامقليكندي سفلي'},\n", + " 14192: {'en': 'Zanjiran'},\n", + " 14210: {'en': 'Farvaz'},\n", + " 14212: {'en': 'Dorudgaran', 'ar': 'درودغران'},\n", + " 14466: {'ar': 'کنمي', 'en': 'Kanemi'},\n", + " 14782: {'en': 'Sar Masjed'},\n", + " 15280: {'en': 'Gachi Bolaghi-ye Sofla'},\n", + " 15904: {'fr': 'centrale électrique de Dhekelia',\n", + " 'es': 'Central eléctrica de Dekhelia',\n", + " 'de': 'Hafen Dhekelia',\n", + " 'en': 'Dhekelia Power Station',\n", + " 'zh': '泽凯利亚发电厂'},\n", + " 16126: {'en': 'Ercan'},\n", + " 16517: {'en': 'Kalopanagiotis Dam'},\n", + " 16770: {'en': 'Statos–Agios Fotios'},\n", + " 16937: {'en': 'Makrona'},\n", + " 16973: {'ar': 'لاكارأباد', 'en': 'Lakarabad-e Sofla'},\n", + " 16978: {'en': 'Kazbagar Jali'},\n", + " 16982: {'en': 'Lamunu'},\n", + " 16986: {'en': 'Barzand'},\n", + " 16998: {'en': 'Takah Kandi'},\n", + " 17000: {'ar': 'كرم كندي', 'en': 'Keram Kandi'},\n", + " 17001: {'en': 'Qutur Bolagh', 'ar': 'قوطور بلاغ'},\n", + " 17008: {'en': 'Tak Kandi'},\n", + " 17015: {'en': 'Khalifehlu Kandi-ye Kuchak'},\n", + " 17031: {'en': 'Surkha Kandi'},\n", + " 17038: {'en': 'Ebrahim Kandi-ye Vosta', 'ar': 'إبراهيم كندي وسطي'},\n", + " 17045: {'en': 'Parya Katli'},\n", + " 17048: {'en': 'Kasihli'},\n", + " 17050: {'ar': 'إياز كندي', 'en': 'Ayaz Kandi'},\n", + " 17054: {'en': 'Tazeh Kand-e Kian', 'ar': 'تازة كندكيان'},\n", + " 17057: {'en': 'Qushchi Bayram Khvajeh', 'ar': 'قوشتشي بايرام\\u200c خواجة'},\n", + " 17079: {'ar': 'كدخدالو بالا', 'en': 'Kadkhodalu-ye Bala'},\n", + " 17084: {'en': 'Aq Qabaq-e Golshad Kandi', 'ar': 'غورشاد كندي'},\n", + " 17091: {'ar': 'يلي عليا', 'en': 'Yeli-ye Sofla'},\n", + " 17095: {'en': 'Hamvar Kandi', 'ar': 'هموار كندي'},\n", + " 17096: {'ar': 'همو', 'en': 'Homu'},\n", + " 17097: {'ar': 'همنشين', 'es': 'Ham Neshin', 'en': 'Ham Neshin'},\n", + " 17098: {'en': 'Hamdamlu', 'ar': 'همدملو'},\n", + " 17100: {'en': 'Havar Kandi Qeshlaqi', 'ar': 'هاوار كندي قشلاقي'},\n", + " 17103: {'ar': 'نولو', 'en': 'Nowlu'},\n", + " 17104: {'en': 'Nurollah Beyglu'},\n", + " 17107: {'ar': 'ملي كندي', 'en': 'Melli Kandi'},\n", + " 17115: {'ar': 'محمد صالحلو', 'en': 'Mohammad Salehu'},\n", + " 17121: {'en': 'Malqeshlaqi', 'ar': 'مالقشلاقي'},\n", + " 17124: {'ar': 'لوتجان', 'en': 'Lowtejan'},\n", + " 17125: {'en': 'Lalan-e Sofla', 'ar': 'لالان سفلي'},\n", + " 17126: {'ar': 'محمد حسنلو', 'en': 'Mohammad Hasanlu'},\n", + " 17127: {'ar': 'غون\\u200c غورمز', 'en': 'Gun Gowrmez'},\n", + " 17132: {'en': 'Gerdeh Zaylu', 'ar': 'غردة زايلو'},\n", + " 17136: {'ar': 'غاو أهن', 'en': 'Gavahan'},\n", + " 17141: {'ar': 'ميروردي كندي', 'en': 'Mirverdi Kandi'},\n", + " 17147: {'en': 'Kerishan', 'ar': 'كريشان'},\n", + " 17154: {'ar': 'كابل\\u200c أباد', 'en': 'Kabolabad'},\n", + " 17155: {'en': 'Qayah Dibi', 'ar': 'قیة دیبي'},\n", + " 17156: {'ar': 'قية باشي بزرغ', 'en': 'Qayah Bashi-ye Bozorg'},\n", + " 17167: {'ar': 'قليان ساز', 'en': 'Qalyan Saz'},\n", + " 17173: {'ar': 'قطر سفلي', 'en': 'Qatar-e Sofla'},\n", + " 17174: {'en': 'Harna', 'ar': 'هارنا'},\n", + " 17184: {'en': 'Qeshlaq-e Gowmir Chinlu-ye Owrtadagh',\n", + " 'ar': 'قشلاق غورتشينلواورتاداغ'},\n", + " 17193: {'en': 'Qeshlaq-e Qaneh', 'ar': 'قشلاق قانة'},\n", + " 17236: {'en': 'Qeshlaq-e Hajj Taleb', 'ar': 'قشلاق حاج طالب'},\n", + " 17239: {'ar': 'قشلاق تشنار', 'en': 'Qeshlaq-e Chenar'},\n", + " 17243: {'ar': 'قشلاق جدا', 'en': 'Qeshlaq-e Jeda'},\n", + " 17252: {'en': 'Qeshlaq Amir Khanlu-ye Moharramabad',\n", + " 'ar': 'قشلاق أمير خانلو محرم أباد'},\n", + " 17253: {'en': 'Qeshlaq Amir Khanlu-ye Qarah Saqqal',\n", + " 'ar': 'قشلاق أمير خانلو قرة سقل'},\n", + " 17256: {'ar': 'قشلاق أمير خانلو بل رحمان',\n", + " 'en': 'Qeshlaq Amir Khanlu-ye Pol-e Rahman'},\n", + " 17262: {'en': 'Qeshlaq-e Agh Laqan', 'ar': 'قشلاق أغلاقان'},\n", + " 17263: {'ar': 'قشلاق أجي أشمة نوراحمد',\n", + " 'en': 'Qeshlaq-e Aji Eshmeh-ye Nurahmad'},\n", + " 17266: {'en': 'Qarah Qayah-ye Shakarlu', 'ar': 'قرة قیة شاکر لو'},\n", + " 17270: {'ar': 'قرة وانلو', 'en': 'Qarah Vanlu'},\n", + " 17271: {'en': 'Qarah Daraq-e Vosta', 'ar': 'قرة درق وسطي'},\n", + " 17273: {'en': 'Qarah Daraq-e Sofla', 'ar': 'قرة درق سفلي'},\n", + " 17277: {'en': 'Qarahjah Aghle', 'ar': 'قره جاه أغلي'},\n", + " 17278: {'en': 'Qorbanlu', 'ar': 'قربانلو'},\n", + " 17280: {'ar': 'قباد کندي', 'en': 'Qobad Kandi'},\n", + " 17281: {'en': 'Qanlu', 'ar': 'قانلو'},\n", + " 17282: {'ar': 'قاقالو', 'en': 'Qaqalu'},\n", + " 17286: {'en': 'Qarlujeh', 'ar': 'قارلوجة'},\n", + " 17289: {'en': 'Gharib Hajji', 'ar': 'غريب حاجي'},\n", + " 17304: {'ar': 'مدينة قشلاقي', 'en': 'Madineh Qeshlaqi'},\n", + " 17315: {'ar': 'سيف خانلو', 'en': 'Seyf Khanlu'},\n", + " 17320: {'ar': 'شيخلان سفلي', 'en': 'Sheykhlan-e Sofla'},\n", + " 17322: {'ar': 'شهبازلو', 'en': 'Shahbazlu'},\n", + " 17323: {'en': 'Shur Daraq-e Sofla', 'ar': 'شوردرق سفلي'},\n", + " 17330: {'en': 'Shah Heydar', 'ar': 'شاه\\u200c حيدر'},\n", + " 17331: {'en': 'Shamlu-ye Kuchak', 'ar': 'شاملوي كوتشك'},\n", + " 17333: {'en': 'Shabi Kandi', 'ar': 'شابي كندي'},\n", + " 17347: {'en': 'Seqehsay', 'ar': 'سقة ساي'},\n", + " 17349: {'ar': 'ساري ياتاق', 'en': 'Sari Yataq'},\n", + " 17363: {'ar': 'دوغي درق', 'en': 'Dowgi Daraq'},\n", + " 17371: {'en': 'Dowrmishkhanlu', 'ar': 'دورميشكانلو'},\n", + " 17374: {'ar': 'داودان بالا', 'en': 'Davdan-e Bala'},\n", + " 17382: {'ar': 'خان محمدلو', 'en': 'Khan Mohammadlu'},\n", + " 17388: {'en': 'Khalan', 'ar': 'خالان'},\n", + " 17398: {'ar': 'حاجي نورش كندي', 'en': 'Hajji Nowrush Kandi'},\n", + " 17402: {'en': 'Gechi Qeshlaq-e Sofla', 'ar': 'غتشي قشلاق سفلي'},\n", + " 17405: {'en': 'Qeshlaq-e Seyyedlar-e Seyfollah',\n", + " 'ar': 'قشلاق سیدلر سیف الله'},\n", + " 17418: {'en': 'Hajj Ahmad Kandi', 'ar': 'حاج أحمد كندي'},\n", + " 17420: {'ar': 'تشناق', 'en': 'Chanaq'},\n", + " 17428: {'en': 'Janan Lu', 'ar': 'جانانلو'},\n", + " 17430: {'en': 'pillar a los compadres'},\n", + " 17435: {'en': 'Tabestanaq', 'ar': 'تابستانق'},\n", + " 17437: {'en': 'Pirlar-e Sofla', 'ar': 'بيرلر سفلي'},\n", + " 17440: {'en': 'Pir Ahmadlu', 'ar': 'بير أحمد لو'},\n", + " 17443: {'en': 'Parviz Khanlu', 'ar': 'برويز خانلو'},\n", + " 17453: {'ar': 'بسطاملو', 'en': 'Bastamlu'},\n", + " 17459: {'ar': 'بالي بيغ لو', 'en': 'Bali Beyglu'},\n", + " 17460: {'en': 'Baqer Owghli', 'ar': 'باقراوغلي'},\n", + " 17465: {'en': 'Bashkalan', 'ar': 'باش\\u200c كلان'},\n", + " 17466: {'en': 'Babaylu', 'ar': 'بابايلو'},\n", + " 17470: {'ar': 'أيري بوجاق', 'en': 'Ayri Bujaq'},\n", + " 17472: {'en': 'Ichi Daraq', 'ar': 'إيتشي درق'},\n", + " 17474: {'ar': 'أولي قشلاق', 'en': 'Owli Qeshlaq'},\n", + " 17488: {'ar': 'غلام حسین کندي', 'en': 'Gholam Hoseyn Kandi'},\n", + " 17503: {'en': 'Aznab-e Khaleseh', 'ar': 'أزناب خالصة'},\n", + " 17504: {'en': 'Oruj Qeshlaq-e Morad', 'ar': 'أروج قشلاق مراد'},\n", + " 17506: {'en': 'Oruj Qeshlaq-e Hajj Almas Khan',\n", + " 'ar': 'أروج قشلاق حاج الماس\\u200c خان'},\n", + " 17512: {'en': 'Ojaq Qeshlaq-e Khoruslu', 'ar': 'أجاق قشلاق خروسلو'},\n", + " 17516: {'en': 'Avanlu', 'ar': 'أوانلو'},\n", + " 17517: {'en': 'Avarsin', 'ar': 'أوارسين'},\n", + " 17519: {'ar': 'أق قباق وسطي', 'en': 'Aq Qabaq-e Vosta'},\n", + " 17524: {'en': 'Aq Beraz', 'ar': 'أق براز'},\n", + " 17531: {'en': 'Ajudanabad', 'ar': 'أجودان\\u200c أباد'},\n", + " 17539: {'en': 'Yengikand-e Khusheh Mehr', 'ar': 'ينغي كند خوشة مهر'},\n", + " 17540: {'en': 'Yengikand-e Khaneh-ye Barq', 'ar': 'ينغي كند خانة برق'},\n", + " 17568: {'ar': 'أوختشي', 'en': 'Owkhchi'},\n", + " 17591: {'ar': 'زوارق', 'en': 'Zavaraq'},\n", + " 17593: {'en': 'Tazeh Kand-e Sheykh ol Eslam',\n", + " 'ar': 'تازة كند شيخ\\u200c الإسلام'},\n", + " 17598: {'ar': 'تازة كند خانكندي', 'en': 'Tazeh Kand-e Khan Kandi'},\n", + " 17608: {'ar': 'طالب خان', 'en': 'Taleb Khan'},\n", + " 17619: {'ar': 'شورجة طور أغاي', 'en': 'Shurjeh-ye Turaghay'},\n", + " 17623: {'ar': 'شيخ\\u200c بابا', 'en': 'Sheykh Baba'},\n", + " 17628: {'ar': 'شللو', 'en': 'Shellalu'},\n", + " 17630: {'en': 'Sharazul', 'ar': 'شرازول'},\n", + " 17631: {'ar': 'شرانلو', 'en': 'Sharanlu'},\n", + " 17632: {'en': 'Shalilvand'},\n", + " 17643: {'ar': 'شيروان\\u200c شاهلو', 'en': 'Shirvan Shahlu'},\n", + " 17649: {'en': 'Serej', 'ar': 'سرج'},\n", + " 17653: {'en': 'Sarkarabad', 'ar': 'سركار أباد'},\n", + " 17656: {'ar': 'سرغزة', 'en': 'Sargezeh'},\n", + " 17657: {'ar': 'سرين\\u200c ديزج', 'en': 'Sarin Dizaj'},\n", + " 17682: {'ar': 'صغايش', 'en': 'Seghayesh'},\n", + " 17686: {'ar': 'روشت كوتشك', 'en': 'Ravesht-e Kuchek'},\n", + " 17702: {'ar': 'قوش\\u200c بلاغ', 'en': 'Qush Bolagh'},\n", + " 17704: {'ar': 'قوريجان', 'en': 'Qurijan'},\n", + " 17706: {'ar': 'قطان', 'en': 'Qotan'},\n", + " 17715: {'ar': 'قیماس خان', 'en': 'Qeymas Khan'},\n", + " 17717: {'en': 'Qeshlaq-e Piazi', 'ar': 'قشلاق بيازي'},\n", + " 17718: {'ar': 'قشلاق خانة برق', 'en': 'Qeshlaq-e Khaneh-ye Barq'},\n", + " 17722: {'ar': 'قرمز خليفة سفلي', 'en': 'Qermez Khalifeh-ye Sofla'},\n", + " 17730: {'en': 'Qartavol', 'ar': 'قرطاول'},\n", + " 17749: {'ar': 'قرة تشال', 'en': 'Qareh Chal'},\n", + " 17752: {'ar': 'قرة باباق', 'en': 'Qareh Papaq'},\n", + " 17756: {'ar': 'قراغيل', 'en': 'Qaraghil'},\n", + " 17760: {'en': 'Qandhar', 'ar': 'قندهار'},\n", + " 17761: {'ar': 'قنديلو', 'en': 'Qandilu'},\n", + " 17781: {'en': 'Parchin Bolagh', 'ar': 'برتشين\\u200c بلاغ'},\n", + " 17784: {'ar': 'بير تشوبان', 'en': 'Pirchupan'},\n", + " 17798: {'en': 'Nosratabad-e Laklar', 'ar': 'نصرت\\u200c أباد لكلر'},\n", + " 17805: {'ar': 'نرج\\u200c أباد', 'en': 'Narjabad'},\n", + " 17812: {'ar': 'ناخرتشي بلاغي', 'en': 'Nakherchi Bolaghi'},\n", + " 17819: {'ar': 'موسي\\u200c درق', 'en': 'Musa Daraq'},\n", + " 17823: {'ar': 'مراد خانلو', 'en': 'Moradkhanlu'},\n", + " 17825: {'en': 'Molla Sarab', 'ar': 'ملا سراب'},\n", + " 17831: {'ar': 'ميمونق', 'en': 'Meymunaq'},\n", + " 17839: {'fr': 'ACP',\n", + " 'en': 'Sahand Maragheh Airport',\n", + " 'zh': '什恩德機場',\n", + " 'ja': 'サハンド空港'},\n", + " 17841: {'ar': 'ممة شير', 'en': 'Mameh Shir'},\n", + " 17849: {'ar': 'مرجانلو', 'en': 'Marjanlu'},\n", + " 17857: {'ar': 'ليلي داغي', 'en': 'Leyli Daghi'},\n", + " 17865: {'en': 'Kutah Mehr', 'ar': 'کوتة مهر'},\n", + " 17869: {'ar': 'كورة جان', 'en': 'Kureh Bolagh'},\n", + " 17876: {'en': 'Korjan', 'ar': 'كرجان'},\n", + " 17883: {'en': 'Kohlan', 'ar': 'كهلان'},\n", + " 17887: {'ar': 'حوري لر', 'en': 'Hurilar'},\n", + " 17896: {'en': 'Khaslu', 'ar': 'خاصلو'},\n", + " 17897: {'en': 'Khasehlar',\n", + " 'fr': 'Khasehlar',\n", + " 'de': 'Khasehlar',\n", + " 'ar': 'خاصة لر'},\n", + " 17898: {'ar': 'خاص\\u200c أباد', 'en': 'Khasabad'},\n", + " 17900: {'ar': 'خانة برق قدیم', 'en': 'Khaneh-ye Barq-e Qadim'},\n", + " 17901: {'en': 'Khaneh-ye Barq-e Jadid', 'ar': 'خانة برق جدید'},\n", + " 17902: {'en': 'Khanamir', 'ar': 'خان\\u200c مير'},\n", + " 17913: {'ar': 'كرج\\u200c أباد', 'en': 'Karajabad'},\n", + " 17924: {'ar': 'كهجوق', 'en': 'Kahjuq'},\n", + " 17954: {'ar': 'هرق', 'en': 'Heraq'},\n", + " 17982: {'ar': 'حاجي مصیب', 'en': 'Hajji Mosayyeb'},\n", + " 17983: {'ar': 'حاجي كرد', 'en': 'Hajji Kord'},\n", + " 17997: {'ar': 'غوي درق سفلي', 'en': 'Gowy Daraq-e Sofla'},\n", + " 18009: {'ar': 'غلي كند', 'en': 'Goli Kand'},\n", + " 18020: {'ar': 'غلة زار', 'en': 'Ghallehzar'},\n", + " 18047: {'ar': 'إصفهانجيق', 'en': 'Esfehanjiq'},\n", + " 18050: {'en': 'Ekis', 'ar': 'إكيس'},\n", + " 18058: {'en': 'Davahchi', 'ar': 'دوة تشي'},\n", + " 18084: {'en': 'Dizaj-e Parvaneh', 'ar': 'دیزج بروانة'},\n", + " 18085: {'en': 'Dizaj-e Leyli Khani', 'ar': 'ديزج ليلي خاني'},\n", + " 18102: {'en': 'Cheraghil', 'ar': 'تشراغيل'},\n", + " 18106: {'en': 'Cheghalu', 'ar': 'تشغالو'},\n", + " 18107: {'ar': 'تشوان سفلي', 'en': 'Chavan-e Sofla'},\n", + " 18110: {'en': 'Chavan Bagh', 'ar': 'تشوان باغ'},\n", + " 18118: {'en': 'Chay Baghi', 'ar': 'تشاي باغي'},\n", + " 18122: {'en': 'Chalelu', 'ar': 'تشاللو'},\n", + " 18129: {'ar': 'بهنق', 'en': 'Behnaq'},\n", + " 18131: {'ar': 'بيغلو', 'en': 'Beyglu'},\n", + " 18137: {'ar': 'بنايم', 'en': 'Banayem'},\n", + " 18143: {'ar': 'باويل سفلي', 'en': 'Bavil-e Sofla'},\n", + " 18160: {'ar': 'بابا قاضي', 'en': 'Baba Qazi'},\n", + " 18174: {'en': 'Amir Ghayeb', 'ar': 'أمير غايب'},\n", + " 18175: {'en': 'Alvanaq', 'ar': 'الوانق'},\n", + " 18179: {'en': 'Akhi Jahan', 'ar': 'أخي جهان'},\n", + " 18189: {'ar': 'أشستان', 'en': 'Ashestan'},\n", + " 18194: {'en': 'Aq Manar', 'ar': 'أق\\u200c منار'},\n", + " 18377: {'en': 'Pomos Dam'},\n", + " 18446: {'en': 'Argaka Dam'},\n", + " 18471: {'en': 'Ayia Marina Dam'},\n", + " 18479: {'en': 'Nea Dimmata'},\n", + " 18546: {'ar': 'قشلاق أمير', 'en': 'Qeshlaq-e Amir'},\n", + " 18593: {'en': 'Jahangir Kandi', 'ar': 'جهانغير كندي'},\n", + " 18646: {'en': 'Baba Kalak', 'ar': 'بابا كلك'},\n", + " 18800: {'en': 'Kato Paphos Castle'},\n", + " 18808: {'en': 'Tombs of the Kings'},\n", + " 18822: {'en': 'Φράγμα Μαυροκόλυμπου'},\n", + " 18839: {'en': 'Vlampouros'},\n", + " 18918: {'de': 'Protaras',\n", + " 'fr': 'Protaras',\n", + " 'ja': 'プロタラス',\n", + " 'ru': 'Протарас',\n", + " 'zh': '普羅塔拉斯',\n", + " 'es': 'Protaras',\n", + " 'en': 'Protaras'},\n", + " 19218: {'en': 'Mavri Schinia'},\n", + " 20794: {'zh': '尼科西亚国际机场',\n", + " 'de': 'Flughafen Nikosia',\n", + " 'ru': 'Никосия',\n", + " 'en': 'Nicosia International Airport',\n", + " 'ko': '니코시아 국제공항',\n", + " 'ar': 'مطار نيقوسيا الدولي',\n", + " 'es': 'Aeropuerto de Nicosia',\n", + " 'fr': 'aéroport international de Nicosie',\n", + " 'pt': 'Aeroporto Internacional de Nicósia',\n", + " 'ja': 'ニコシア国際空港'},\n", + " 21462: {'en': 'Tak-e Ab Band'},\n", + " 21465: {'en': 'Khunik-e Tajen'},\n", + " 21489: {'en': 'Aba Mansuri'},\n", + " 21493: {'en': 'Mehrak'},\n", + " 21543: {'en': 'Tamand'},\n", + " 21544: {'en': 'Tal Quch'},\n", + " 21548: {'en': 'Shams-e Bala'},\n", + " 21554: {'en': 'Qodsian'},\n", + " 21573: {'en': 'Kalateh-ye Sarvar'},\n", + " 21584: {'en': 'Kalateh-ye Malek'},\n", + " 21588: {'en': 'Kalateh-ye Boshgazi'},\n", + " 21625: {'en': 'Hoseynabad-e Miran'},\n", + " 21712: {'en': 'Gandeshkan'},\n", + " 21767: {'ar': 'تشوند', 'en': 'Tashvand'},\n", + " 21802: {'en': 'Mezg', 'ar': 'مزغ'},\n", + " 21856: {'en': 'Hamech'},\n", + " 22200: {'en': 'Zardeh Malek', 'ar': 'زردة ملك'},\n", + " 22258: {'ar': 'وكند', 'en': 'Vakand'},\n", + " 22328: {'en': 'Shekar Daraq', 'ar': 'شكر درق'},\n", + " 22403: {'ar': 'قزلجه ارشد', 'en': 'Qezeljeh-ye Arshad'},\n", + " 22423: {'en': 'Qerkh Seqer', 'ar': 'قرخ\\u200c سقر'},\n", + " 22441: {'ar': 'قرة جة قية', 'en': 'Qarehjah Qayah'},\n", + " 22463: {'en': 'Qarah Kalak', 'ar': 'قرة كلك'},\n", + " 22515: {'en': 'Owranjaq', 'ar': 'أورنجق'},\n", + " 22554: {'ar': 'ملك', 'en': 'Molk'},\n", + " 22624: {'en': 'Keh', 'ar': 'كة'},\n", + " 22626: {'en': 'Kazaraj', 'ar': 'كزرج'},\n", + " 22640: {'en': 'Kalleh Gerd', 'ar': 'كلة غرد'},\n", + " 22696: {'ar': 'غليتر', 'en': 'Goleytar'},\n", + " 22721: {'en': 'Eyvaraq', 'ar': 'إيورق'},\n", + " 22728: {'ar': 'أسفنغرة', 'en': 'Esfangareh'},\n", + " 22736: {'ar': 'دودة', 'en': 'Do Deh'},\n", + " 22817: {'ar': 'برنجق', 'en': 'Berenjaq'},\n", + " 22818: {'en': 'Beneh Kohol', 'ar': 'بنة كهل'},\n", + " 22835: {'ar': 'برزق', 'en': 'Barzaq'},\n", + " 23025: {'en': 'Shabdeh', 'ar': 'شبدة'},\n", + " 23270: {'ar': 'خندق', 'en': 'Khandaq'},\n", + " 23534: {'en': 'Qomeshah'},\n", + " 23830: {'en': 'Jazar'},\n", + " 24080: {'en': 'Charkas'},\n", + " 24331: {'en': 'Shaleh'},\n", + " 24507: {'en': 'Karnachi'},\n", + " 24944: {'ar': 'غول بسر', 'en': 'Gol Besar'},\n", + " 25094: {'en': 'Negareh'},\n", + " 26263: {'en': 'Owrjak'},\n", + " 26644: {'ar': 'منبر', 'en': 'Manbar'},\n", + " 26999: {'en': 'Berenjeh'},\n", + " 28116: {'ar': 'مويلة', 'en': 'Movelah'},\n", + " 28354: {'en': 'Darreh Shahr County'},\n", + " 28899: {'en': 'Fashtakeh-Hossein Norouzi Locality'},\n", + " 29070: {'en': 'Doshman Kordeh', 'pt': 'Doshman Kordeh', 'ar': 'دشمن كردة'},\n", + " 29568: {'en': 'Rajang'},\n", + " 30130: {'en': 'Gownd'},\n", + " 30386: {'en': 'Darreh Par'},\n", + " 31494: {'en': 'Archang'},\n", + " 32181: {'en': 'Tang-e Loreh', 'ar': 'تنغ لرة'},\n", + " 34672: {'en': 'Arghesh'},\n", + " 34743: {'ar': 'البقع', 'en': 'Albuq'},\n", + " 34749: {'en': 'Sudum', 'ar': 'سدم'},\n", + " 35628: {'en': 'Karkasheh'},\n", + " 35643: {'ar': 'هرزة ورز', 'en': 'Harzeh Varz'},\n", + " 35790: {'en': 'Nogeh'},\n", + " 36617: {'en': 'Dezful Airport'},\n", + " 36888: {'en': 'Sorkheh Sang'},\n", + " 36924: {'en': 'Kehel Dasht'},\n", + " 36930: {'en': 'Dasht Andar'},\n", + " 37043: {'en': 'Khojeh Darreh'},\n", + " 37057: {'en': 'Kohneh Keh'},\n", + " 37173: {'en': 'Kalamar'},\n", + " 37218: {'en': 'Dinachal'},\n", + " 37260: {'en': 'Owlom'},\n", + " 37301: {'en': 'Pardeh Sar'},\n", + " 37482: {'en': 'Savaraq', 'ar': 'سورق'},\n", + " 37512: {'en': 'Komoq', 'ar': 'كمق'},\n", + " 37579: {'en': 'Tarkeh Deh'},\n", + " 37600: {'ar': 'ألنكش', 'en': 'Alankesh'},\n", + " 37621: {'en': 'Qareh Kahal'},\n", + " 37645: {'ar': 'ورة نو', 'en': 'Vareh Now'},\n", + " 37893: {'en': 'Hoshneh', 'ar': 'هشنة'},\n", + " 37902: {'ar': 'غودلر', 'en': 'Gowdlar'},\n", + " 37985: {'ar': 'أسكي شهر', 'en': 'Ask Shahr'},\n", + " 38198: {'en': 'Kachalar', 'ar': 'كاتشالار'},\n", + " 39958: {'en': 'Qareh Tappeh-ye Sheykh'},\n", + " 40767: {'en': 'Qalandar Tappeh'},\n", + " 40982: {'en': 'Zazz'},\n", + " 41696: {'en': 'Baryeh'},\n", + " 41714: {'en': 'Aznaq', 'ar': 'أزنق'},\n", + " 42281: {'en': 'Nezeheh', 'ar': 'نزهة'},\n", + " 47764: {'en': 'Khuran Strait'},\n", + " 48674: {'en': 'Yord-e Khalaf'},\n", + " 48945: {'ar': 'كرزة', 'en': 'Kerzeh'},\n", + " 49211: {'en': 'Raz Galleh'},\n", + " 49518: {'de': 'Ruanda',\n", + " 'fr': 'Rwanda',\n", + " 'ja': 'ルワンダ共和国',\n", + " 'pt': 'Ruanda',\n", + " 'ru': 'Руанда',\n", + " 'ar': 'رواندا',\n", + " 'zh': '卢旺达',\n", + " 'es': 'Ruanda',\n", + " 'en': 'Republic of Rwanda',\n", + " 'ko': '르완다'},\n", + " 49526: {'es': 'Monte Karisimbi',\n", + " 'pt': 'Monte Karisimbi',\n", + " 'de': 'Karisimbi',\n", + " 'en': 'Mount Karisimbi'},\n", + " 49593: {'ar': 'ييد', 'zh': '耶德', 'ja': 'イェード', 'en': 'Yeed'},\n", + " 49636: {'zh': '耶戈里', 'ja': 'ヤゴリ', 'en': 'Yagori', 'ko': '야고리'},\n", + " 49745: {'en': 'Xudun',\n", + " 'zh': '胡敦',\n", + " 'fr': 'Xudun',\n", + " 'ja': 'フドゥン',\n", + " 'ru': 'Худун',\n", + " 'ar': 'حدن'},\n", + " 49747: {'en': 'Oddur'},\n", + " 50348: {'en': 'Ras Hafun'},\n", + " 50360: {'fr': 'Woqooyi Galbeed',\n", + " 'ar': 'وقويي جالبيد\\u200e',\n", + " 'en': 'Waqooyi Galbeed Region'},\n", + " 50371: {'ru': 'Уисиль', 'pt': 'Wisil', 'en': 'Wisil'},\n", + " 50385: {'en': 'Widhwidh', 'ru': 'Уидвид', 'ja': 'ウィドウィド'},\n", + " 50989: {'en': 'Ufeyn', 'zh': '烏菲恩', 'ar': 'أفين'},\n", + " 51043: {'en': 'Uar Esgudud'},\n", + " 51218: {'en': 'Mear Tomb Island'},\n", + " 51230: {'en': 'Togdheer', 'ar': 'تُوجدَير\\u200e', 'fr': 'Togdheer'},\n", + " 51341: {'ja': 'タレー',\n", + " 'en': 'Taleh',\n", + " 'ru': 'Талех',\n", + " 'fr': 'Taleh',\n", + " 'zh': '塔萊赫',\n", + " 'ar': 'تلأ ح'},\n", + " 51537: {'ru': 'Сомали',\n", + " 'en': 'Somalia',\n", + " 'ko': '소말리아',\n", + " 'pt': 'Somália',\n", + " 'zh': '索马里',\n", + " 'ja': 'ソマリア',\n", + " 'fr': 'Somalie',\n", + " 'es': 'Somalia',\n", + " 'ar': 'جمهورية الصومال الفيدرالية',\n", + " 'de': 'Somalia'},\n", + " 51646: {'en': 'Sidimo'},\n", + " 51722: {'de': 'Shimbiris',\n", + " 'fr': 'Shimbiris',\n", + " 'ja': 'シンビリス山',\n", + " 'pt': 'Shimbiris',\n", + " 'ru': 'Шимбирис',\n", + " 'ar': 'شيمبريس',\n", + " 'zh': '桑比勒斯',\n", + " 'es': 'Shimbiris',\n", + " 'en': 'Shimbiris'},\n", + " 51966: {'ar': 'شبيلي السفلى',\n", + " 'fr': 'Shabeellaha Hoose',\n", + " 'en': 'Shabeele Hoose Region'},\n", + " 51967: {'en': 'Middle Shabele', 'fr': 'Shabeellaha Dhexe'},\n", + " 52014: {'en': 'Chisimaio Island'},\n", + " 52078: {'ru': 'Сайла',\n", + " 'ar': 'زيلع',\n", + " 'fr': 'Zeilah',\n", + " 'zh': '塞拉',\n", + " 'pt': 'Zeila',\n", + " 'de': 'Zeila',\n", + " 'es': 'Zeila',\n", + " 'ja': 'ゼイラ',\n", + " 'en': 'Zeila',\n", + " 'ko': '제일라'},\n", + " 52187: {'en': 'Sanaag Region', 'fr': 'Sanaag', 'ar': 'سناج'},\n", + " 52211: {'en': 'Green Island'},\n", + " 52382: {'ja': 'サーコウ',\n", + " 'ar': 'سااكوو',\n", + " 'ru': 'Сакоу',\n", + " 'en': 'Saakow',\n", + " 'zh': '薩高'},\n", + " 52529: {'en': 'Refuge Bay'},\n", + " 52619: {'en': 'Rako Raaxo', 'ja': 'ラコ・ラーコ'},\n", + " 52667: {'ru': 'Рабабле', 'en': 'Rabaable'},\n", + " 52884: {'en': 'Qoryale', 'zh': '闊亞勒', 'fr': 'Qoryale', 'ja': 'クオリャレ'},\n", + " 52968: {'en': 'Qoorlugud', 'ja': 'コリルグド'},\n", + " 53035: {'en': 'Qeedi Haan'},\n", + " 53102: {'fr': 'Qardho',\n", + " 'ja': 'カルドー',\n", + " 'pt': 'Qardho',\n", + " 'es': 'Qardho',\n", + " 'ar': 'قرضو',\n", + " 'de': 'Qardho',\n", + " 'en': 'Qardho',\n", + " 'ko': '쿼르드호',\n", + " 'ru': 'Кардхо',\n", + " 'zh': '佳爾多'},\n", + " 53157: {'ja': 'カンダーラ',\n", + " 'ar': 'قندلة',\n", + " 'ru': 'Кандала',\n", + " 'en': 'Qandala',\n", + " 'de': 'Qandala',\n", + " 'zh': '甘達拉',\n", + " 'es': 'Ġandala',\n", + " 'fr': 'Qandala'},\n", + " 53286: {'en': 'Qaan Dhoole'},\n", + " 53372: {'de': 'Oodweyne',\n", + " 'fr': 'Oodweyne',\n", + " 'ja': 'オドウェイン',\n", + " 'ru': 'Одуэйне',\n", + " 'zh': '歐德韋內',\n", + " 'en': 'Odweine'},\n", + " 53417: {'en': 'Blankett Point'},\n", + " 53477: {'fr': 'Nugaal', 'ar': 'نوغال', 'en': 'Nugaal'},\n", + " 53482: {'en': 'North Channel'},\n", + " 53654: {'de': 'Mogadischu',\n", + " 'fr': 'Mogadiscio',\n", + " 'ja': 'モガディシュ',\n", + " 'pt': 'Mogadíscio',\n", + " 'ru': 'Могадишо',\n", + " 'ar': 'مقديشيو',\n", + " 'zh': '摩加迪休',\n", + " 'es': 'Mogadiscio',\n", + " 'en': 'Mogadishu',\n", + " 'ko': '모가디슈'},\n", + " 53707: {'fr': 'Mudug', 'ar': 'مدق', 'en': 'Mudug'},\n", + " 54009: {'en': 'Mareeg', 'ja': 'マレーグ'},\n", + " 54042: {'en': 'Middle Reef'},\n", + " 54078: {'ru': 'Майд',\n", + " 'ar': 'ميط',\n", + " 'fr': 'Maydh',\n", + " 'zh': '邁雅德',\n", + " 'de': 'Maydh',\n", + " 'ja': 'メイト',\n", + " 'en': 'Maydh'},\n", + " 54110: {'en': 'South Island'},\n", + " 54225: {'ar': 'مركة\\u200e', 'en': 'Merca'},\n", + " 54243: {'en': 'Mareroo', 'ja': 'マレロ'},\n", + " 54365: {'de': 'Bab al-Mandab',\n", + " 'en': 'Bab-el-Mandeb',\n", + " 'ko': '바브엘만데브 해협',\n", + " 'pt': 'Bab-el-Mandeb',\n", + " 'fr': 'Bab el Mandeb',\n", + " 'ja': 'バブ・エル・マンデブ海峡',\n", + " 'ru': 'Баб-эль-Мандебский пролив',\n", + " 'es': 'Bab-el-Mandeb',\n", + " 'ar': 'مضيق باب المندب'},\n", + " 54715: {'ru': 'Лук', 'en': 'Luuq'},\n", + " 54873: {'en': 'Zigzag Pass'},\n", + " 55223: {'ar': 'لاسقُرَى', 'en': 'Las Khorey'},\n", + " 55417: {'en': 'Kurmaan'},\n", + " 55581: {'en': 'Nyuni'},\n", + " 55670: {'en': 'Cape Bissell'},\n", + " 55671: {'ja': 'キスマヨ',\n", + " 'en': 'Kismayo',\n", + " 'de': 'Kismaayo',\n", + " 'es': 'Kismaayo',\n", + " 'fr': 'Kismaayo'},\n", + " 55970: {'fr': 'Kalabaydh', 'ja': 'カラベイド', 'en': 'Kalabaydh'},\n", + " 56083: {'fr': 'Jubbada Hoose', 'en': 'Lower Juba'},\n", + " 56084: {'fr': 'Jubbada Dhexe', 'en': 'Middle Juba'},\n", + " 56105: {'ja': 'ジャリーバーン',\n", + " 'zh': '賈利班',\n", + " 'en': 'Jariban',\n", + " 'de': 'Jariban',\n", + " 'ar': 'جاريبان',\n", + " 'ru': 'Джиррибан'},\n", + " 56335: {'en': 'Giohar', 'de': 'Giohar'},\n", + " 56399: {'de': 'Jamaame', 'en': 'Jamaame'},\n", + " 56505: {'de': 'Iskushuban',\n", + " 'en': 'Iskushuban',\n", + " 'zh': '伊斯庫舒班',\n", + " 'fr': 'Iskushuban',\n", + " 'ja': 'イスクシュバン',\n", + " 'ru': 'Искушубан',\n", + " 'es': 'Iskušuban',\n", + " 'ar': 'يـسـكـوشـوبـان'},\n", + " 56894: {'en': 'Horufadhi', 'ja': 'ホルファヒ'},\n", + " 56898: {'en': 'Horseed'},\n", + " 57060: {'ar': 'حيران\\u200e', 'fr': 'Hiiraan', 'en': 'Hiiran Region'},\n", + " 57289: {'ru': 'Харгейсе', 'en': 'Hargeisa'},\n", + " 57324: {'en': 'Hareeri'},\n", + " 57661: {'en': 'Cape Guardafui',\n", + " 'pt': 'Capo Guardafui',\n", + " 'de': 'Kap Guardafui'},\n", + " 57733: {'en': 'Guriceel'},\n", + " 57872: {'en': 'Gugux'},\n", + " 58072: {'en': 'Gowlallo'},\n", + " 58222: {'en': 'Gobwen'},\n", + " 58441: {'en': 'Godaalo'},\n", + " 58500: {'en': 'Bajun Islands'},\n", + " 58802: {'en': 'Gedo Region', 'fr': 'Gedo', 'ar': 'جوبا الوسطى\\u200e'},\n", + " 58864: {'en': 'Gawaan'},\n", + " 58933: {'ja': 'ガローウェ',\n", + " 'ru': 'Гароуэ',\n", + " 'de': 'Garowe',\n", + " 'en': 'Garoowe',\n", + " 'ko': '가로웨',\n", + " 'fr': 'Garowe',\n", + " 'ar': 'غاروي\\u200e',\n", + " 'zh': '加罗韦'},\n", + " 59140: {'ja': 'ガラダグ',\n", + " 'en': 'Garadag',\n", + " 'de': 'Garadag',\n", + " 'zh': '加拉達格',\n", + " 'ru': 'Гарадаг'},\n", + " 59362: {'fr': 'Galguduud', 'ar': 'جلجدود\\u200e', 'en': 'Galgadud Region'},\n", + " 59611: {'zh': '加勒卡約',\n", + " 'de': 'Gaalkacyo',\n", + " 'en': 'Gaalkacyo',\n", + " 'ko': '갈카요',\n", + " 'ar': 'جالكعيو',\n", + " 'ja': 'ガルカイヨ',\n", + " 'ru': 'Галькайо',\n", + " 'fr': 'Gaal Kacyo'},\n", + " 59749: {'en': 'Fred Rock'},\n", + " 59757: {'en': 'Ras Filuk'},\n", + " 59947: {'en': 'Fawatu Island'},\n", + " 60079: {'en': 'El Mergis'},\n", + " 60149: {'en': 'El Dibir'},\n", + " 60659: {'en': 'Daedalus Knoll'},\n", + " 60809: {'ar': 'دنسور',\n", + " 'en': 'Dinsoor',\n", + " 'ru': 'Динсор',\n", + " 'de': 'Dinsor',\n", + " 'ja': 'ディンソール',\n", + " 'zh': '丁索爾'},\n", + " 60928: {'en': 'Dusa Marreb'},\n", + " 61231: {'en': 'Dheenle'},\n", + " 61366: {'en': 'Dhalwo'},\n", + " 61404: {'ar': 'طهر',\n", + " 'zh': '達哈爾',\n", + " 'pt': 'Dhahar',\n", + " 'ja': 'ダハー',\n", + " 'en': 'Dhahar',\n", + " 'de': 'Dhahar'},\n", + " 61986: {'en': 'Dalweyn'},\n", + " 62062: {'en': 'Daharro'},\n", + " 62359: {'en': 'Dawa River'},\n", + " 62691: {'en': 'Erigavo'},\n", + " 62751: {'pt': 'Ceel Huur', 'en': 'El Hur'},\n", + " 62811: {'ja': 'エル・アリ', 'en': 'El Ali'},\n", + " 63003: {'en': 'Caracase'},\n", + " 63081: {'en': 'Alula', 'ar': 'بندر علولة'},\n", + " 63344: {'fr': 'Adale',\n", + " 'ru': 'Адале',\n", + " 'de': 'Adale',\n", + " 'zh': '阿達雷',\n", + " 'ar': 'عدلي',\n", + " 'en': 'Adale',\n", + " 'ja': 'アダレ'},\n", + " 63361: {'en': 'Cadaado'},\n", + " 63795: {'ru': 'Буръо',\n", + " 'es': 'Burao',\n", + " 'ar': 'برعو',\n", + " 'zh': '布拉奧',\n", + " 'en': 'Burco',\n", + " 'ja': 'ブラオ'},\n", + " 64013: {'fr': 'Bosasso',\n", + " 'ru': 'Босасо',\n", + " 'de': 'Boosaaso',\n", + " 'zh': '博萨索',\n", + " 'ar': 'بوصاصو',\n", + " 'en': 'Bosaso',\n", + " 'ko': '보사소',\n", + " 'ja': 'ボサソ'},\n", + " 64021: {'ja': 'ボラマ',\n", + " 'es': 'Boorama',\n", + " 'ru': 'Борама',\n", + " 'de': 'Boorama',\n", + " 'en': 'Boorama',\n", + " 'ko': '보라마',\n", + " 'ar': 'بورمة',\n", + " 'zh': '博拉马'},\n", + " 64247: {'en': 'Mtanga Island'},\n", + " 64286: {'en': 'Pillar Rock'},\n", + " 64400: {'fr': 'Beyra', 'en': 'Beyra', 'ru': 'Бейра'},\n", + " 64412: {'de': 'Bereeda',\n", + " 'ru': 'Береда',\n", + " 'ar': 'بريده',\n", + " 'zh': '巴利達',\n", + " 'en': 'Bereeda'},\n", + " 64435: {'ja': 'ベルベラ',\n", + " 'es': 'Berbera',\n", + " 'ar': 'بربرة',\n", + " 'de': 'Berbera',\n", + " 'en': 'Berbera',\n", + " 'ko': '베르베라',\n", + " 'ru': 'Бербера',\n", + " 'zh': '柏培拉'},\n", + " 64460: {'ja': 'ベレトウェイン',\n", + " 'ru': 'Беледуэйне',\n", + " 'ar': 'بلد وين',\n", + " 'zh': '貝蘭德文',\n", + " 'en': 'Beledweyne',\n", + " 'ko': '벨레드웨이네'},\n", + " 64536: {'zh': '拜多亞',\n", + " 'de': 'Baidoa',\n", + " 'ru': 'Байдоа',\n", + " 'en': 'Baidoa',\n", + " 'ko': '바이다보',\n", + " 'ar': 'بيدوا',\n", + " 'fr': 'Baidoa',\n", + " 'ja': 'バイドア'},\n", + " 64538: {'ar': 'باي', 'fr': 'Bay', 'en': 'Bay Region'},\n", + " 64588: {'en': 'Barwaaqo'},\n", + " 64661: {'en': 'Bari', 'fr': 'Bari', 'ar': 'باري\\u200e'},\n", + " 64670: {'zh': '巴爾加勒',\n", + " 'de': 'Bargaal',\n", + " 'en': 'Bargal',\n", + " 'ar': 'برغال',\n", + " 'fr': 'Bargal',\n", + " 'ja': 'バルガル'},\n", + " 64828: {'en': 'Banaaney'},\n", + " 64833: {'en': 'Banaadir', 'ar': 'بنادر\\u200e', 'fr': 'Banaadir'},\n", + " 64953: {'en': 'Balanbaal'},\n", + " 64982: {'en': 'Bakool', 'fr': 'Bakool'},\n", + " 65058: {'zh': '巴丹',\n", + " 'ru': 'Бадхан',\n", + " 'en': 'Badhan',\n", + " 'ko': '배드한',\n", + " 'ar': 'برن\\u200e\\u200e، سناج',\n", + " 'es': 'Badhan',\n", + " 'pt': 'Badhan',\n", + " 'fr': 'Badhan',\n", + " 'de': 'Badhan',\n", + " 'ja': 'バハン'},\n", + " 65171: {'en': 'Bardera',\n", + " 'ru': 'Бардере',\n", + " 'de': 'Baardheere',\n", + " 'zh': '巴爾代雷',\n", + " 'ja': 'バルデラ'},\n", + " 65305: {'ar': 'أودينلي', 'en': 'Awdiinle'},\n", + " 65505: {'ar': 'عربسيو',\n", + " 'de': 'Arabsiyo',\n", + " 'en': 'Arabsiyo',\n", + " 'fr': 'Arabsiyo',\n", + " 'es': 'Arabsiyo'},\n", + " 65756: {'ja': 'アフマドゥ',\n", + " 'fr': 'Afmadow',\n", + " 'zh': '阿夫馬多',\n", + " 'en': 'Afmadow',\n", + " 'ar': 'افمادوو',\n", + " 'de': 'Afmadow',\n", + " 'ru': 'Афмадоу'},\n", + " 66032: {'ru': 'Абарсо', 'en': 'Abaarso'},\n", + " 66093: {'ar': 'ياسوج',\n", + " 'ja': 'ヤースージュ',\n", + " 'zh': '亞蘇季',\n", + " 'de': 'Yasudsch',\n", + " 'en': 'Yasuj',\n", + " 'ko': '야수즈',\n", + " 'ru': 'Ясудж'},\n", + " 66474: {'en': 'Talish Mountains'},\n", + " 66575: {'en': 'Sirjan'},\n", + " 66735: {'en': 'Shahroki Air Force Base'},\n", + " 66803: {'en': 'Tang-e Sarvak', 'zh': '堂-埃·薩爾瓦克'},\n", + " 66997: {'en': 'Ras Sheik Shuaib'},\n", + " 67831: {'en': 'Kharfakol'},\n", + " 68057: {'en': 'Kelardasht County'},\n", + " 68239: {'pt': 'Hamadã',\n", + " 'en': 'Hamedan',\n", + " 'ru': 'Хамадан',\n", + " 'ar': 'مدينة همدان',\n", + " 'es': 'Hamadán',\n", + " 'de': 'Hamadan',\n", + " 'fr': 'Hamadan'},\n", + " 68471: {'en': 'Fasa'},\n", + " 69179: {'en': 'Ashtian County'},\n", + " 69311: {'en': 'Aghajari Airport'},\n", + " 69382: {'en': 'Zurbat Island', 'ar': 'Zurbāţ'},\n", + " 69396: {'ar': 'زكيكة', 'en': 'Zukaykah'},\n", + " 69400: {'ar': 'زغينه', 'en': 'Zughaynah'},\n", + " 69430: {'en': 'Zijān', 'ar': 'Zijān'},\n", + " 69440: {'en': 'Az Zaydiyah District', 'ar': 'الزيدية'},\n", + " 69499: {'ar': 'زبيد', 'en': 'Zabid District'},\n", + " 69512: {'ar': 'يون', 'en': 'Yuwan'},\n", + " 69543: {'zh': '也门',\n", + " 'de': 'Jemen',\n", + " 'ru': 'Йемен',\n", + " 'en': 'Yemen',\n", + " 'ko': '예멘',\n", + " 'ar': 'اليمن',\n", + " 'es': 'Yemen',\n", + " 'fr': 'Yémen',\n", + " 'pt': 'Iémen',\n", + " 'ja': 'イエメン共和国'},\n", + " 69558: {'en': 'Yarim District', 'ar': 'يريم'},\n", + " 69585: {'en': 'Yakhtul', 'ar': 'يختل، تعز'},\n", + " 69626: {'en': 'Barn Hill'},\n", + " 69746: {'ar': 'عويرة', 'en': '`Uwayrah'},\n", + " 69828: {'en': 'Okban Island', 'ar': '‘Uqbān'},\n", + " 69890: {'en': 'Khor Omeira'},\n", + " 69920: {'en': 'Bir Usaf'},\n", + " 69921: {'ar': 'العدين', 'en': 'Al Udayn District'},\n", + " 69946: {'en': 'Ras Towiss'},\n", + " 69962: {'en': 'Tongue Island'},\n", + " 69973: {'en': 'Tubr', 'ar': 'تبر'},\n", + " 70045: {'ar': 'ثرة', 'en': 'Thirah'},\n", + " 70133: {'ar': 'تولبة', 'en': 'Tawlabah'},\n", + " 70144: {'en': 'Aden Harbour'},\n", + " 70221: {'ar': 'التعزية', 'en': \"At-Ta'iziyah District\"},\n", + " 70222: {'fr': \"Ta'izz\",\n", + " 'ar': 'تعز',\n", + " 'es': \"Gobernación de Ta'izz\",\n", + " 'de': 'Gouvernement Taʿizz',\n", + " 'en': 'Ta‘izz',\n", + " 'ko': '타이즈주',\n", + " 'zh': '塔伊茲省',\n", + " 'pt': \"Ta'izz\",\n", + " 'ru': 'Таиз',\n", + " 'ja': 'タイズ県'},\n", + " 70225: {'ru': 'Таиз', 'ar': 'تعز', 'en': 'Taiz'},\n", + " 70302: {'zh': '索科特拉島',\n", + " 'ar': 'سقطرى',\n", + " 'ru': 'Сокотра',\n", + " 'ja': 'ソコトラ島',\n", + " 'en': 'Socotra',\n", + " 'ko': '소코트라 섬',\n", + " 'pt': 'Socotorá'},\n", + " 70357: {'en': 'Abs', 'ar': 'عبس'},\n", + " 70374: {'en': 'Sumayr', 'ar': 'سمير'},\n", + " 70379: {'en': 'Jebel Sunamma'},\n", + " 70458: {'en': 'Subaykh'},\n", + " 70474: {'en': 'Square Islet', 'ar': 'جزيرة المربع'},\n", + " 70514: {'en': 'Sira Island', 'ar': 'صيرة'},\n", + " 70676: {'ar': 'Shibām',\n", + " 'fr': 'Shibam',\n", + " 'ru': 'Шибам',\n", + " 'de': 'Schibam',\n", + " 'en': 'Shibam'},\n", + " 70706: {'en': 'Ras Sheikh Syed'},\n", + " 70724: {'ar': 'شيبرة', 'en': 'Shaybirah'},\n", + " 70772: {'en': 'Sharmah'},\n", + " 70825: {'ar': 'الشرية', 'en': 'Ash Sharyah District'},\n", + " 70837: {'fr': 'Shuqrah',\n", + " 'ja': 'シュクラ',\n", + " 'ru': 'Шукра',\n", + " 'ar': 'شقرة',\n", + " 'en': 'Shuqrah'},\n", + " 70908: {'ar': 'شهارة', 'en': 'Shaharah District'},\n", + " 70935: {'es': 'Gobernación de Shabwah',\n", + " 'ja': 'シャブワ県',\n", + " 'fr': 'Shabwah',\n", + " 'pt': 'Chabua',\n", + " 'zh': '舍卜沃省',\n", + " 'en': 'Shabwah',\n", + " 'ko': '샤브와주',\n", + " 'ar': 'محافظة شبوة',\n", + " 'de': 'Gouvernement Schabwa',\n", + " 'ru': 'Шабва'},\n", + " 70972: {'en': 'Seedaseer Lines'},\n", + " 70981: {'ja': 'サユーン',\n", + " 'en': 'Seiyun',\n", + " 'ar': 'سيئون',\n", + " 'ru': 'Сайвун',\n", + " 'fr': \"Say'un\"},\n", + " 71131: {'en': 'Sanhan and Bani Bahlul District'},\n", + " 71132: {'zh': '薩那省',\n", + " 'de': 'Gouvernement Sanaa',\n", + " 'en': 'Sanaa Governorate',\n", + " 'ko': '사나주',\n", + " 'es': 'Gobernación de Saná',\n", + " 'ar': 'محافظة صنعاء',\n", + " 'ja': 'サナア県',\n", + " 'pt': 'Sana',\n", + " 'ru': 'Сана',\n", + " 'fr': 'Muhafadat Sanaa'},\n", + " 71137: {'fr': 'Sanaa',\n", + " 'ar': 'صنعاء',\n", + " 'es': 'Sanaá',\n", + " 'en': 'Sanaa',\n", + " 'ko': '사나',\n", + " 'ru': 'Сана',\n", + " 'de': 'Sanaa',\n", + " 'ja': 'サヌア',\n", + " 'pt': 'Sanaa'},\n", + " 71202: {'en': 'Falaise Camp'},\n", + " 71333: {'fr': \"Sa'dah\",\n", + " 'ar': 'صعدة',\n", + " 'es': \"Gobernación de Sa'dah\",\n", + " 'en': 'Saada Governorate',\n", + " 'ko': '사다주',\n", + " 'ru': 'Саада',\n", + " 'de': 'Gouvernement Saʿda',\n", + " 'ja': 'サアダ県',\n", + " 'zh': '萨达省',\n", + " 'pt': \"Sa'dah\"},\n", + " 71334: {'ar': 'صعده', 'en': \"Sa'dah\"},\n", + " 71352: {'ar': 'صبر', 'en': 'Subar'},\n", + " 71440: {'en': 'Round Island Bay'},\n", + " 71442: {'en': 'Round Island'},\n", + " 71459: {'en': 'Risha Island'},\n", + " 71476: {'en': 'Riham', 'ar': 'رهم'},\n", + " 71489: {'ar': 'رداع', 'en': 'Radda District'},\n", + " 71532: {'pt': 'Raymah',\n", + " 'ru': 'Райма',\n", + " 'de': 'Gouvernement Raima',\n", + " 'es': 'Gobernación de Raymah',\n", + " 'ar': 'ريمه',\n", + " 'fr': 'Raima',\n", + " 'en': 'Raymah',\n", + " 'ko': '라이마주',\n", + " 'zh': '赖马省',\n", + " 'ja': 'ライマ県'},\n", + " 71621: {'en': 'Rahkl Island'},\n", + " 71747: {'ar': 'قسيس', 'en': 'Qusays'},\n", + " 71885: {'en': 'Ras Kaau'},\n", + " 71916: {'ar': 'قسم', 'en': 'Qasam', 'ru': 'Касам'},\n", + " 72008: {'ar': 'قمرم', 'en': 'Qamram'},\n", + " 72292: {'en': 'Namir', 'ar': 'نمر'},\n", + " 72370: {'en': 'An Nadirah District', 'ar': 'النادرة'},\n", + " 72396: {'en': 'Sugarloaf'},\n", + " 72422: {'en': 'Mushejera Island'},\n", + " 72514: {'ar': 'المخاء', 'en': 'Al-Makha District'},\n", + " 72560: {'ar': 'مذينب', 'en': 'Mudhaynib'},\n", + " 72721: {'en': 'Melaba', 'ar': 'ملبة'},\n", + " 72752: {'ar': 'Mīdī', 'en': 'Medi'},\n", + " 72780: {'en': 'Mawiyah District', 'ar': 'ماوية'},\n", + " 72910: {'en': 'Masaarde', 'ar': 'مسعردة'},\n", + " 72918: {'en': 'Maryamah'},\n", + " 72966: {'pt': \"Ma'rib\",\n", + " 'en': 'Ma’rib',\n", + " 'ko': '마리브주',\n", + " 'ru': 'Мариб',\n", + " 'ja': 'マアリブ県',\n", + " 'ar': 'محافظة مأرب',\n", + " 'es': 'Gobernación de Mareb',\n", + " 'zh': '马里卜省',\n", + " 'de': \"Gouvernement Ma'rib\",\n", + " 'fr': \"Ma'rib\"},\n", + " 72973: {'en': 'Steamer Point', 'ar': 'رأس مربط'},\n", + " 73062: {'en': 'Mankhar', 'ar': 'منخر', 'fr': 'Mankhar'},\n", + " 73071: {'en': 'Fishing Point'},\n", + " 73139: {'en': 'Makram', 'fr': 'Makram', 'ar': 'مكرم'},\n", + " 73172: {'ar': 'المخادر', 'en': 'Al Makhadir District'},\n", + " 73200: {'pt': 'Al Mahwit',\n", + " 'ru': 'Махвит',\n", + " 'de': 'Gouvernement al-Mahwīt',\n", + " 'es': 'Gobernación de Al Mahwit',\n", + " 'ar': 'المحويت',\n", + " 'fr': 'Al Mahwit',\n", + " 'en': 'Al Mahwit Governorate',\n", + " 'ko': '마위트주',\n", + " 'zh': '迈赫维特省',\n", + " 'ja': 'マフウィート県'},\n", + " 73269: {'ar': 'مهقرة', 'en': 'Mahaqra'},\n", + " 73375: {'ar': 'مذبل', 'en': 'Madhbal'},\n", + " 73431: {'ar': 'لقنة', 'en': 'Luqnah'},\n", + " 73453: {'en': 'Loban Island'},\n", + " 73460: {'en': 'Lubayb'},\n", + " 73468: {'en': 'Little Aden Township'},\n", + " 73554: {'en': 'Lahrum', 'ar': 'لهرم'},\n", + " 73601: {'en': 'Camp Island'},\n", + " 73656: {'ar': 'كريتر', 'en': 'Crater'},\n", + " 73685: {'ar': 'كلمية', 'en': 'Kilmia'},\n", + " 73746: {'ar': 'خديش', 'en': 'Khudaysh'},\n", + " 73834: {'en': 'Jebel Kharaz'},\n", + " 73865: {'en': 'Khamir District', 'ar': 'خمر'},\n", + " 73956: {'en': 'Shibam Kawkaban District', 'ar': 'شبام كوكبان'},\n", + " 74012: {'en': 'Kamaran Island'},\n", + " 74018: {'en': 'Kal Farun Island', 'ar': 'كعال فرعون'},\n", + " 74049: {'en': 'Kadaman Saghir Island'},\n", + " 74073: {'en': 'Bir Jiraza'},\n", + " 74075: {'en': 'Jurab Island'},\n", + " 74166: {'ar': 'جهرين', 'en': 'Jiharine'},\n", + " 74222: {'es': 'Gobernación de Yauf',\n", + " 'ja': 'ジャウフ県',\n", + " 'fr': 'Al Jawf',\n", + " 'pt': 'Al Jawf',\n", + " 'zh': '焦夫省',\n", + " 'en': 'Al Jawf',\n", + " 'ko': '자우프주',\n", + " 'ar': 'محافظة الجوف',\n", + " 'de': 'Gouvernement al-Dschauf',\n", + " 'ru': 'Эль-Джауф'},\n", + " 74333: {'en': 'Ras el Jedir'},\n", + " 74357: {'en': 'Jabal al-Tair Island'},\n", + " 74451: {'en': 'Asses Ears'},\n", + " 74475: {'en': 'Ibb District', 'ar': 'إب'},\n", + " 74580: {'en': 'Huraidhah District', 'ar': 'حريضة'},\n", + " 74921: {'en': 'Haynan', 'ru': 'Хайнин'},\n", + " 74928: {'en': 'Ghubbet al Haikah'},\n", + " 75132: {'en': 'Harib District', 'ar': 'حريب'},\n", + " 75142: {'ar': 'مديرية حرض', 'fr': 'Harad', 'en': 'Harad District'},\n", + " 75148: {'en': 'Awām Temple'},\n", + " 75189: {'en': 'Great Hanish Island'},\n", + " 75190: {'ar': 'جزر حنيش\\u200e', 'en': 'Hanish Islands'},\n", + " 75257: {'ar': 'همدان', 'en': 'Hamdan District'},\n", + " 75266: {'en': 'Hamar Island'},\n", + " 75334: {'ar': 'حجة', 'en': 'Hajjah City District'},\n", + " 75371: {'en': 'Hajana', 'ar': 'هجنة'},\n", + " 75378: {'en': 'Bir Hajaf'},\n", + " 75411: {'fr': 'Hadramaout',\n", + " 'ar': 'حضرموت',\n", + " 'es': 'Gobernación de Hadramaut',\n", + " 'de': 'Gouvernement Hadramaut',\n", + " 'en': 'Hadramaout',\n", + " 'ko': '하드라마우트주',\n", + " 'zh': '哈德拉毛省',\n", + " 'pt': 'Hadramaute',\n", + " 'ru': 'Хадрамаут',\n", + " 'ja': 'ハドラマウト県'},\n", + " 75412: {'en': 'Hadhramaut'},\n", + " 75580: {'ar': 'غريرة', 'en': 'Sheikh Said'},\n", + " 75778: {'ar': 'فغمة', 'en': 'Fughmah'},\n", + " 75780: {'en': 'Front Bay'},\n", + " 75783: {'en': 'Fishermen’s Bay'},\n", + " 75788: {'en': 'Findah', 'ar': 'فنده'},\n", + " 75802: {'en': 'Fayl', 'ar': 'فيل'},\n", + " 75810: {'ar': 'فاتحة', 'en': 'Fatihat'},\n", + " 75891: {'en': 'Elephant Trunk'},\n", + " 75892: {'en': 'Elephants Back'},\n", + " 76153: {'en': 'Dhi As Sufal District', 'ar': 'ذي السفال'},\n", + " 76183: {'ja': 'ザマール県',\n", + " 'fr': 'Dhamar',\n", + " 'es': 'Gobernación de Dhamar',\n", + " 'de': 'Gouvernement Dhamār',\n", + " 'ru': 'Дамар',\n", + " 'en': 'Dhamār',\n", + " 'ko': '다마르주',\n", + " 'zh': '扎馬尔省',\n", + " 'ar': 'محافظة ذمار',\n", + " 'pt': 'Dhamar'},\n", + " 76669: {'en': 'Currency Bay'},\n", + " 76670: {'en': 'Conquest Bay'},\n", + " 76686: {'ar': 'بويش', 'en': 'Buwaysh'},\n", + " 76773: {'en': 'Jebel am Birka'},\n", + " 76898: {'en': 'Bayt Samnah'},\n", + " 76903: {'ar': 'ضهران', 'en': 'Bayt Radm'},\n", + " 76904: {'en': 'Bayt Qishn', 'ar': 'بيت قشن'},\n", + " 76912: {'en': 'Bayt Majraz'},\n", + " 76934: {'en': 'Bayt Fashid', 'ar': 'بيت فشد'},\n", + " 76989: {'en': 'Bayt al-Faqih District', 'ar': 'بيت الفقيه'},\n", + " 77042: {'en': 'Bawarid Island'},\n", + " 77085: {'ar': 'بروج', 'en': 'Barwaj'},\n", + " 77094: {'en': 'Berri Islands'},\n", + " 77111: {'ru': 'Перим', 'en': 'Perim', 'ar': 'جزيرة ميون', 'de': 'Perim'},\n", + " 77365: {'ar': 'بلسنة', 'en': 'Balsanah'},\n", + " 77407: {'ar': 'Bājil', 'en': 'Bajil District'},\n", + " 77462: {'en': 'Shab Bodinjan Shoal', 'ar': 'Shi‘b Bādinjān'},\n", + " 77535: {'en': 'Dahayir Islands'},\n", + " 77536: {'ar': 'زغفة', 'en': 'Az Zaghfah'},\n", + " 77615: {'ar': 'أورمة', 'en': 'Awrumah'},\n", + " 77726: {'ar': '‘Atāq', 'en': 'Ataq'},\n", + " 77759: {'en': 'Sakiah'},\n", + " 77761: {'ar': 'السنتين', 'en': 'As Sunnatayn'},\n", + " 77780: {'ar': 'السرين', 'en': 'As Sirrayn'},\n", + " 77785: {'en': 'As Sihib', 'ar': 'السهب'},\n", + " 77830: {'en': 'As Samn', 'ar': 'سمن'},\n", + " 78051: {'en': 'Artil', 'ar': 'أرتل'},\n", + " 78079: {'en': 'Ar Rukayb'},\n", + " 78080: {'en': 'Ar Rujaydah'},\n", + " 78177: {'en': 'Ar Rabwah'},\n", + " 78266: {'en': 'Ras al Ara'},\n", + " 78316: {'ar': 'Tiqfāsh', 'en': 'Entufash Island'},\n", + " 78363: {'en': 'An Nashsh', 'ar': 'النش'},\n", + " 78395: {'ar': 'أنب', 'en': 'Anib'},\n", + " 78516: {'en': 'Urmek Island'},\n", + " 78637: {'ar': 'القشبة', 'en': 'Al Qashabah'},\n", + " 78751: {'pt': 'Mocha',\n", + " 'ja': 'モカ',\n", + " 'en': 'Mocha',\n", + " 'ko': '모카',\n", + " 'de': 'Mokka',\n", + " 'es': 'Moca',\n", + " 'ar': 'Al Mukhā',\n", + " 'zh': '穆哈',\n", + " 'ru': 'Моха',\n", + " 'fr': 'Mokha'},\n", + " 78754: {'de': 'Al-Mukalla',\n", + " 'ru': 'Аль-Мукалла',\n", + " 'fr': 'Al Mukalla',\n", + " 'ar': 'المكلا',\n", + " 'en': 'Al Mukalla'},\n", + " 78985: {'en': 'Al Mahrah Governorate',\n", + " 'ko': '마라주',\n", + " 'ja': 'マフラ県',\n", + " 'pt': 'Al Mahra',\n", + " 'es': 'Gobernación de Al Mahrah',\n", + " 'zh': '邁赫拉省',\n", + " 'ar': 'محافظة المهرة',\n", + " 'fr': 'Al Mahra',\n", + " 'ru': 'Эль-Махра',\n", + " 'de': 'Gouvernement al-Mahra'},\n", + " 78990: {'en': 'Al Mahal', 'ar': 'المحل'},\n", + " 79128: {'en': 'Kotama Island'},\n", + " 79181: {'en': 'Al Khabr', 'ar': 'الخبر'},\n", + " 79195: {'en': 'Al Kawd', 'ar': 'الكود'},\n", + " 79266: {'ar': 'الجول', 'en': 'Al Jawl'},\n", + " 79346: {'en': 'Irqa', 'ar': 'العرقة', 'ru': 'Эль-Ирка'},\n", + " 79353: {'ar': 'جزيرة الأخوين', 'en': 'The Brothers'},\n", + " 79415: {'ar': 'الحديدة', 'en': 'Al Hudaydah'},\n", + " 79416: {'zh': '荷台达省',\n", + " 'de': 'Gouvernement al-Hudaida',\n", + " 'en': 'Al Hudaydah Governorate',\n", + " 'ko': '호데이다주',\n", + " 'es': 'Gobernación de Al Hudayda',\n", + " 'ar': 'محافظة الحديدة',\n", + " 'ja': 'フダイダ県',\n", + " 'pt': 'Al Hudaydah',\n", + " 'ru': 'Ходейда',\n", + " 'fr': 'Al Hudaydah'},\n", + " 79700: {'de': 'al-Ghaida',\n", + " 'fr': 'Al Ghaydah',\n", + " 'ar': 'الغيظة',\n", + " 'en': 'Al Ghayḑah'},\n", + " 79836: {'en': 'Al Bayda', 'ar': 'البيضاء'},\n", + " 79838: {'pt': \"Al Bayda'\",\n", + " 'fr': \"Al Bayda'\",\n", + " 'ru': 'Эль-Бейда',\n", + " 'de': \"Gouvernement al-Baidā'\",\n", + " 'zh': '贝达省',\n", + " 'es': \"Gobernación de Al Bayda'\",\n", + " 'ar': 'محافظة البيضاء',\n", + " 'en': 'Al Bayda',\n", + " 'ko': '바이다주',\n", + " 'ja': 'バイダー県'},\n", + " 79878: {'en': 'El Bodhi Island'},\n", + " 79885: {'en': 'Al Aysar', 'ar': 'الأيسر'},\n", + " 80090: {'en': 'Ajusak Island', 'ar': 'Juwā'},\n", + " 80302: {'en': 'Aden Peninsula'},\n", + " 80303: {'de': 'Golf von Aden',\n", + " 'ru': 'Аденский залив',\n", + " 'en': 'Gulf of Aden',\n", + " 'fr': \"Gulfe d'Aden\",\n", + " 'pt': 'Golfo de Adem'},\n", + " 80384: {'en': 'Dhale', 'ar': 'الضالع'},\n", + " 80411: {'en': 'Little Aden Peninsula'},\n", + " 80412: {'ar': 'محافظة عدن', 'fr': 'Aden', 'en': 'Aden'},\n", + " 80425: {'zh': '阿比扬省',\n", + " 'ar': 'ابين',\n", + " 'ru': 'Абьян',\n", + " 'fr': 'Abyan',\n", + " 'ja': 'アビヤン県',\n", + " 'en': 'Abyan Governorate',\n", + " 'ko': '아브얀주',\n", + " 'de': 'Gouvernement Abyan',\n", + " 'es': 'Gobernación de Abyan',\n", + " 'pt': 'Abyan'},\n", + " 80431: {'en': 'Abu-Obeida Camp'},\n", + " 80468: {'en': 'Slave Island', 'ar': 'جزيرة العمال'},\n", + " 80477: {'en': 'Abd el Kari', 'ar': 'جزيرة عبد الكوري'},\n", + " 80509: {'ar': 'البردية', 'en': 'Bardia'},\n", + " 80623: {'en': 'Msus', 'ru': 'Масус', 'ar': 'زاوية مسوس'},\n", + " 80635: {'fr': 'Mechili',\n", + " 'ja': 'メキリ',\n", + " 'ru': 'Эль-Макили',\n", + " 'ar': 'مخيلى',\n", + " 'en': 'Mechili'},\n", + " 81302: {'pt': 'Tobruk',\n", + " 'en': 'Tobruk',\n", + " 'ko': '투브루크',\n", + " 'ru': 'Тобрук',\n", + " 'ja': 'トブルク',\n", + " 'ar': 'Ţubruq',\n", + " 'es': 'Tobruk',\n", + " 'zh': '图卜鲁格',\n", + " 'de': 'Tobruk',\n", + " 'fr': 'Tobrouk'},\n", + " 82501: {'en': 'Sidi Al-Gharib Cemetery', 'ar': 'مقبرة سيدي الغريب'},\n", + " 82972: {'de': 'Kyrene',\n", + " 'en': 'Cyrene',\n", + " 'zh': '昔兰尼',\n", + " 'pt': 'Cirene',\n", + " 'fr': 'Cyrène',\n", + " 'es': 'Cirene',\n", + " 'ar': 'سوسة'},\n", + " 85417: {'en': 'Libyan Plateau'},\n", + " 87205: {'ar': 'درنة', 'fr': 'Derna', 'en': 'Darnah'},\n", + " 88252: {'es': 'Cirenaica',\n", + " 'ar': 'برقة',\n", + " 'en': 'Province of Benghazi',\n", + " 'ko': '키레나이카',\n", + " 'de': 'Kyrenaika',\n", + " 'ja': 'キレナイカ',\n", + " 'fr': 'Cyrénaïque',\n", + " 'ru': 'Киренаика',\n", + " 'zh': '昔兰尼加'},\n", + " 88260: {'en': 'Port Bardia'},\n", + " 88314: {'en': 'Benina', 'fr': 'Benina'},\n", + " 88319: {'pt': 'Bengasi',\n", + " 'ja': 'ベンガジ',\n", + " 'en': 'Benghazi',\n", + " 'ko': '벵가지',\n", + " 'de': 'Banghazi',\n", + " 'es': 'Bengasi',\n", + " 'ar': 'بنغازي',\n", + " 'zh': '班加西',\n", + " 'ru': 'Бенгази',\n", + " 'fr': 'Benghazi'},\n", + " 88903: {'en': 'Al Marj', 'ru': 'Аль-Мардж', 'ar': 'المرج'},\n", + " 88931: {'fr': 'Koufra',\n", + " 'ar': 'الكفرة',\n", + " 'es': 'Kufra',\n", + " 'en': 'Oasis of Kufrah',\n", + " 'de': 'Kufra-Oasen'},\n", + " 88932: {'zh': '庫夫拉省',\n", + " 'ru': 'Эль-Куфра',\n", + " 'en': 'Al Kufrah',\n", + " 'ko': '알쿠프라 주',\n", + " 'ar': 'شعبية الكفرة',\n", + " 'es': 'Al Kufrah',\n", + " 'pt': 'Al Kufrah',\n", + " 'fr': 'Al-Koufrah',\n", + " 'de': 'Munizip al-Kufra',\n", + " 'ja': 'クフラ県'},\n", + " 88962: {'ru': 'Эль-Джауф',\n", + " 'en': 'Al Jawf',\n", + " 'ko': '알자우프',\n", + " 'ar': 'الجوف',\n", + " 'fr': 'El Giof',\n", + " 'ja': 'ジャウフ'},\n", + " 89113: {'ja': 'アジュダービヤー',\n", + " 'ru': 'Адждабия',\n", + " 'de': 'Adschdabiya',\n", + " 'en': 'Ajdabiya',\n", + " 'ko': '아지다비야',\n", + " 'ar': 'شعبية إجدابيا',\n", + " 'pt': 'Ajdabiyah',\n", + " 'zh': '艾季达比耶'},\n", + " 89340: {'ar': 'نهر الزاب الكبير', 'en': 'Great Zab River'},\n", + " 89341: {'en': 'Basra', 'ar': 'البصرة'},\n", + " 89394: {'ar': 'زريزة', 'en': 'Zeriza'},\n", + " 89528: {'en': 'Great Zab River', 'ar': 'الزاب الكبير'},\n", + " 89569: {'ar': 'قضاء زاخو',\n", + " 'fr': 'Zakho',\n", + " 'ja': 'ザーホー地区',\n", + " 'en': 'Zakho',\n", + " 'de': 'Zaxo'},\n", + " 89570: {'ru': 'Заху', 'en': 'Zakho', 'ar': 'Zākhū', 'de': 'Zaxo'},\n", + " 90026: {'ar': 'طوزخورماتو', 'en': 'Tuz Khurmatu'},\n", + " 90148: {'pt': 'Tikrit', 'ar': 'قضاء تكريت', 'en': 'Tikrit District'},\n", + " 90150: {'de': 'Tikrit',\n", + " 'en': 'Tikrit',\n", + " 'pt': 'Tikrit',\n", + " 'fr': 'Tikrit',\n", + " 'ja': 'ティクリート',\n", + " 'ru': 'Тикрит',\n", + " 'es': 'Tikrit',\n", + " 'ar': 'تكريت'},\n", + " 90287: {'de': 'Seleukia-Ktesiphon',\n", + " 'en': 'Ctesiphon',\n", + " 'fr': 'Ctésiphon',\n", + " 'ru': 'Ктесифон',\n", + " 'es': 'Ctesifonte',\n", + " 'ar': 'Ţāq Kisrá'},\n", + " 90377: {'pt': 'Uruk',\n", + " 'ja': 'ウルク',\n", + " 'en': 'Erech',\n", + " 'ko': '우루크',\n", + " 'de': 'Uruk',\n", + " 'es': 'Uruk',\n", + " 'ar': 'الوركاء',\n", + " 'ru': 'Урук',\n", + " 'fr': 'Uruk'},\n", + " 90519: {'en': 'Qasab AL-Jndil', 'ar': 'كصب الجنديل'},\n", + " 90707: {'ar': 'سينا', 'en': 'Sina'},\n", + " 90864: {'en': 'Shilan', 'ar': 'شيلان'},\n", + " 91560: {'ja': 'ラルサ',\n", + " 'ar': 'لارسا',\n", + " 'ru': 'Ларса',\n", + " 'en': 'Larsa',\n", + " 'de': 'Larsa',\n", + " 'es': 'Larsa',\n", + " 'fr': 'Larsa'},\n", + " 91597: {'ar': 'سامراء', 'en': 'Samarra'},\n", + " 91695: {'ja': 'サラーフッディーン県',\n", + " 'fr': 'Salah ad-Din',\n", + " 'es': 'Gobernación de Saladino',\n", + " 'de': 'Salah ad-Din',\n", + " 'ru': 'Салах-эд-Дин',\n", + " 'en': 'Salah ad Din Governorate',\n", + " 'ko': '살라딘주',\n", + " 'zh': '萨拉赫丁省',\n", + " 'ar': 'صلاح الدين',\n", + " 'pt': 'Salah-ad-Din'},\n", + " 91696: {'ar': 'صلاح الدين', 'en': 'Pirmam'},\n", + " 91899: {'ar': 'Rūsī', 'en': 'Ruiyse'},\n", + " 91952: {'ar': 'ريوان', 'en': 'Rewan'},\n", + " 92411: {'ru': 'Кара-Таппа', 'ar': 'قرة تبه', 'en': 'Qara Tapa'},\n", + " 92430: {'en': 'Al-Hamdaniya District', 'ar': 'قضاء الحمدانية'},\n", + " 92762: {'ar': 'بيربلا', 'en': 'Pirbla'},\n", + " 92792: {'en': 'Pase', 'ar': 'باسي'},\n", + " 92877: {'ar': 'نينوى', 'en': 'Nineveh'},\n", + " 92878: {'es': 'Nínive',\n", + " 'ar': 'نينوى',\n", + " 'en': 'Nineveh',\n", + " 'de': 'Ninive',\n", + " 'ja': 'ニネヴェ',\n", + " 'fr': 'Ninive',\n", + " 'ru': 'Ниневия',\n", + " 'pt': 'Nínive',\n", + " 'zh': '尼尼微'},\n", + " 92916: {'ar': 'نزور', 'en': 'Nizur'},\n", + " 93006: {'fr': 'Nimroud',\n", + " 'es': 'Nimrud',\n", + " 'de': 'Nimrud',\n", + " 'en': 'Nimrud',\n", + " 'ar': 'اثار نمرود'},\n", + " 93199: {'ja': 'ウル',\n", + " 'fr': 'Ur',\n", + " 'es': 'Ur',\n", + " 'de': 'Ur',\n", + " 'ru': 'Ур',\n", + " 'en': 'Ur',\n", + " 'zh': '乌尔',\n", + " 'ar': 'أور',\n", + " 'pt': 'Ur'},\n", + " 93540: {'es': 'Gobernación de Mesena',\n", + " 'ar': 'ميسان',\n", + " 'en': 'Maysan',\n", + " 'ko': '마이산주',\n", + " 'de': 'Maisan',\n", + " 'ja': 'マイサーン県',\n", + " 'fr': 'Maysan',\n", + " 'ru': 'Майсан',\n", + " 'pt': 'Maysan',\n", + " 'zh': '米桑省'},\n", + " 93633: {'en': 'Imam Hussain Shrine'},\n", + " 93706: {'ar': 'Māngīsh', 'ru': 'Мангайш', 'en': 'Mangesh'},\n", + " 93775: {'ar': 'كريز الملح', 'en': 'Lake Milh'},\n", + " 93800: {'en': 'Mala Arab', 'ar': 'ملا عرب'},\n", + " 94104: {'en': 'Kurka', 'ar': 'كوركا'},\n", + " 94274: {'ar': 'كيشان', 'en': 'Kashan'},\n", + " 94277: {'fr': 'Kish',\n", + " 'ja': 'キシュ',\n", + " 'pt': 'Kish',\n", + " 'es': 'Kish',\n", + " 'ar': 'Kīsh',\n", + " 'de': 'Kiš',\n", + " 'en': 'Kish',\n", + " 'ru': 'Киш'},\n", + " 94590: {'en': 'Khanaqin District'},\n", + " 94787: {'pt': 'Kirkuk',\n", + " 'en': 'Kirkuk',\n", + " 'ko': '키르쿠크',\n", + " 'ru': 'Киркук',\n", + " 'ja': 'キルクーク',\n", + " 'ar': 'كركوك',\n", + " 'es': 'Kirkuk',\n", + " 'zh': '基爾庫克',\n", + " 'de': 'Kirkuk',\n", + " 'fr': 'Kirkouk'},\n", + " 94824: {'zh': '卡爾巴拉',\n", + " 'ar': 'كربلاء',\n", + " 'ru': 'Кербела',\n", + " 'fr': 'Kerbala',\n", + " 'ja': 'カルバラー',\n", + " 'en': 'Karbala',\n", + " 'ko': '카르발라',\n", + " 'de': 'Karbala',\n", + " 'es': 'Kerbala',\n", + " 'pt': 'Karbala'},\n", + " 95069: {'ar': 'ناحية جرف الصخر', 'en': 'Jurf Al-Nasr'},\n", + " 95446: {'es': 'Erbil',\n", + " 'ar': 'اربيل',\n", + " 'fr': 'Erbil',\n", + " 'ja': 'アルビール県',\n", + " 'de': 'Arbil',\n", + " 'en': 'Erbil'},\n", + " 95588: {'en': 'Ekmala', 'ar': 'اكماله'},\n", + " 95809: {'en': 'Hindiya Barrage',\n", + " 'ja': 'ヒンディヤ堰',\n", + " 'ar': 'سدة الهندية',\n", + " 'fr': 'barrage de Hindiya',\n", + " 'de': 'Hindiyya-Kanal'},\n", + " 96024: {'ar': 'هرور', 'en': 'Hiror'},\n", + " 96123: {'ar': 'هور الحمّار', 'en': 'Hor al-Hammar'},\n", + " 96205: {'fr': 'Halabja',\n", + " 'de': 'Halabdscha',\n", + " 'ru': 'Халабджа',\n", + " 'en': 'Halabja',\n", + " 'ar': 'حلبجة'},\n", + " 96331: {'de': 'Hatra',\n", + " 'en': 'Hatra',\n", + " 'ar': 'مملكة الحضر',\n", + " 'es': 'Hatra',\n", + " 'fr': 'Hatra',\n", + " 'pt': 'Hatra',\n", + " 'ja': 'ハトラ'},\n", + " 96402: {'ar': 'كولك', 'en': 'Gulak'},\n", + " 96666: {'en': 'Mount Gara', 'ar': 'جبل قرة داغ'},\n", + " 96834: {'de': 'Eridu',\n", + " 'pt': 'Eridu',\n", + " 'ja': 'エリドゥ',\n", + " 'fr': 'Eridu',\n", + " 'ar': 'تل اريدو',\n", + " 'es': 'Eridu',\n", + " 'en': 'Eridu'},\n", + " 96965: {'es': 'Gobernación de Diala',\n", + " 'pt': 'Diyala',\n", + " 'ja': 'ディヤーラー県',\n", + " 'en': 'Diyala Province',\n", + " 'ko': '디얄라주',\n", + " 'ru': 'Дияла',\n", + " 'fr': 'Diyala',\n", + " 'de': 'Governorat Diyala',\n", + " 'zh': '迪亞拉省',\n", + " 'ar': 'بعقوبة'},\n", + " 96994: {'de': 'Dohuk', 'fr': 'Duhok', 'ar': 'دهوك', 'en': 'Duhok'},\n", + " 97019: {'pt': 'Dhi Qar',\n", + " 'en': 'Dhi Qar',\n", + " 'ko': '디카르주',\n", + " 'ru': 'Ди-Кар',\n", + " 'ja': 'ジーカール県',\n", + " 'ar': 'الناصرية',\n", + " 'es': 'Gobernación de Di Car',\n", + " 'zh': '濟加爾省',\n", + " 'de': 'Dhi Qar',\n", + " 'fr': 'Dhi Qar'},\n", + " 97078: {'en': 'Demka', 'ar': 'ديمكا'},\n", + " 97145: {'en': 'Darkar', 'ar': 'دركار عجم'},\n", + " 97153: {'ar': 'ديريشكي', 'en': 'Derishke'},\n", + " 97269: {'en': 'Duhok District', 'ar': 'محافظة دهوك'},\n", + " 97270: {'zh': '杜胡克省',\n", + " 'ar': 'محافظة دهوك',\n", + " 'ru': 'Дахук',\n", + " 'fr': 'Dahuk',\n", + " 'ja': 'ドホーク県',\n", + " 'en': 'Duhok',\n", + " 'ko': '다후크주',\n", + " 'de': 'Gouvernement Dahuk',\n", + " 'es': 'Gobernación de Duhok',\n", + " 'pt': 'Dahuk'},\n", + " 97663: {'en': 'Blecan', 'ar': 'بليجان'},\n", + " 97788: {'ar': 'بيكوفا', 'en': 'Beguva'},\n", + " 97825: {'fr': 'Batifa',\n", + " 'ar': 'باطوفة',\n", + " 'en': 'Batifa',\n", + " 'ru': 'Батива',\n", + " 'ja': 'バティックファ'},\n", + " 97879: {'en': 'Barzinjah', 'ja': 'バルジンジャ', 'ar': 'برزنجة'},\n", + " 97907: {'en': 'Barkale', 'ar': 'بركلي'},\n", + " 97925: {'ar': 'بارهول', 'en': 'Barhol'},\n", + " 97990: {'es': 'Baquba',\n", + " 'de': 'Baquba',\n", + " 'en': 'Baqubah',\n", + " 'fr': 'Bakouba',\n", + " 'ar': 'Ba’qūba',\n", + " 'zh': '巴古拜'},\n", + " 98042: {'ar': 'بانك السفلى', 'en': 'Banka Khware'},\n", + " 98144: {'ar': 'قرية بحزاني', 'de': 'Bahzani', 'en': 'Bahzani'},\n", + " 98145: {'ar': 'بهنونه', 'en': 'Bahnuna'},\n", + " 98180: {'zh': '巴格達省',\n", + " 'ru': 'Багдад',\n", + " 'en': 'Baghdad',\n", + " 'ko': '바그다드주',\n", + " 'ar': 'أمانة العاصمة',\n", + " 'es': 'Gobernación de Bagdad',\n", + " 'pt': 'Bagdad',\n", + " 'fr': 'Bagdad',\n", + " 'de': 'Gouvernorat Bagdad',\n", + " 'ja': 'バグダード県'},\n", + " 98182: {'fr': 'Bagdad',\n", + " 'ja': 'バグダード',\n", + " 'pt': 'Bagdá',\n", + " 'es': 'Bagdad',\n", + " 'ar': 'بغداد',\n", + " 'de': 'Bagdad',\n", + " 'en': 'Baghdad',\n", + " 'ko': '바그다드',\n", + " 'ru': 'Багдад'},\n", + " 98228: {'zh': '巴比伦',\n", + " 'de': 'Babylon',\n", + " 'ru': 'Вавилон',\n", + " 'en': 'Babylon',\n", + " 'ko': '바빌론',\n", + " 'ar': 'بابل',\n", + " 'es': 'Babilonia',\n", + " 'fr': 'Babylone',\n", + " 'pt': 'Babilônia',\n", + " 'ja': 'バビロン'},\n", + " 98385: {'en': 'Avlihe', 'ar': 'افلهي'},\n", + " 98410: {'ar': 'كركوك', 'en': 'Kirkuk'},\n", + " 98463: {'fr': 'Souleimaniye',\n", + " 'ar': 'السليمانية',\n", + " 'es': 'Solimania',\n", + " 'de': 'Sulaimaniyya',\n", + " 'en': 'Sulaymaniyah',\n", + " 'ru': 'Сулеймания'},\n", + " 98465: {'ar': 'السليمانية\\u200e',\n", + " 'en': 'Sulaymaniyah',\n", + " 'de': 'as-Sulaimaniyya',\n", + " 'es': 'Gobernación de Solimania'},\n", + " 98534: {'en': 'Al-Salman District', 'ar': 'قضاء السلمان'},\n", + " 98717: {'ar': 'الرمادي',\n", + " 'ru': 'Эр-Рамади',\n", + " 'zh': '拉馬迪',\n", + " 'ja': 'ラマーディー',\n", + " 'de': 'Ramadi',\n", + " 'fr': 'Ramadi',\n", + " 'en': 'Ramadi',\n", + " 'ko': '라마디',\n", + " 'es': 'Ramadi'},\n", + " ...}" + ] + }, + "execution_count": 133, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "alname_df_all_values_selected_only_first_loc_en_filtered_dictionariezed_df = alname_df_all_values_selected_only_first_loc_en_filtered.groupby('geonameid').apply(lambda x: dict(zip(x['isolanguage'], x['alt_name']))).reset_index()\n", + "alname_df_all_values_selected_only_first_loc_en_filtered_dictionariezed_df.columns = ['geonameid', 'iso_language_alt_names']\n", + "\n", + "alname_df_all_values_selected_only_first_loc_en_filtered_dict = alname_df_all_values_selected_only_first_loc_en_filtered_dictionariezed_df.set_index('geonameid')['iso_language_alt_names'].to_dict()\n", + "alname_df_all_values_selected_only_first_loc_en_filtered_dict" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Testing out the different process dataset format" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Test 1: Dataset output" + ] + }, + { + "cell_type": "code", + "execution_count": 148, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "| | geonameid | isolanguage | alt_name |\n", + "|-------:|------------:|:--------------|:-----------|\n", + "| 63100 | 1269750 | en | India |\n", + "| 63101 | 1269750 | ko | 인도 |\n", + "| 177456 | 1269750 | ja | インド |\n", + "| 465842 | 1269750 | pt | Índia |\n", + "| 562186 | 1269750 | es | India |\n", + "| 601777 | 1269750 | zh | 印度 |\n", + "| 721371 | 1269750 | ar | الهند |\n", + "| 810115 | 1269750 | fr | Inde |\n", + "| 839386 | 1269750 | ru | Индия |\n", + "| 922130 | 1269750 | de | Indien |\n" + ] + } + ], + "source": [ + "print(alname_df_all_values_selected_only_first_loc_en_filtered[alname_df_all_values_selected_only_first_loc_en_filtered[\"geonameid\"]==1269750].to_markdown())" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Test 2: JSONified table output" + ] + }, + { + "cell_type": "code", + "execution_count": 122, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "┌───────────┬──────────────────────────────────────────────────────────────────────────────────────────────────────────┐\n", + "│ geonameid │ iso_language_alt_names │\n", + "│ int32 │ varchar │\n", + "├───────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────┤\n", + "│ 1269750 │ {\"en\": \"India\", \"ko\": \"인도\", \"ja\": \"インド\", \"pt\": \"Índia\", \"es\": \"India\", \"zh\": \"印度\", \"ar\": \"الهند… │\n", + "└───────────┴──────────────────────────────────────────────────────────────────────────────────────────────────────────┘" + ] + }, + "execution_count": 122, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "db.sql('''\n", + "SELECT *\n", + "FROM alname_df_all_values_selected_only_first_loc_en_filtered_jsonified\n", + "WHERE geonameid==1269750\n", + "''')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Test 3: Dictionary (/JSON) output" + ] + }, + { + "cell_type": "code", + "execution_count": 150, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'en': 'India',\n", + " 'ko': '인도',\n", + " 'ja': 'インド',\n", + " 'pt': 'Índia',\n", + " 'es': 'India',\n", + " 'zh': '印度',\n", + " 'ar': 'الهند',\n", + " 'fr': 'Inde',\n", + " 'ru': 'Индия',\n", + " 'de': 'Indien'}" + ] + }, + "execution_count": 150, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "alname_df_all_values_selected_only_first_loc_en_filtered_dict[1269750]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Saving the files\n", + "\n", + "The dataset in CSV and the JSON in JSON is available in the zip file `geoname_alt_names.zip`" + ] + }, + { + "cell_type": "code", + "execution_count": 145, + "metadata": {}, + "outputs": [], + "source": [ + "alname_df_all_values_selected_only_first_loc_en_filtered.to_csv(\"geoname_alt_names.csv\", index=False, encoding='utf-8')" + ] + }, + { + "cell_type": "code", + "execution_count": 146, + "metadata": {}, + "outputs": [], + "source": [ + "with open(\"geoname_alt_names.json\", \"w\", encoding='utf-8') as file:\n", + " json.dump(alname_df_all_values_selected_only_first_loc_en_filtered_dict, file, ensure_ascii=False)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}