Я пытаюсь объединить файл geojson с данными csv в карте хороплетов, используя choropleth_geojson, как в minimal_example.py sample:
import choropleth_geojson as cg
import pandas as pd
import json
import plotly.offline as offline
mapbox_access_token = 'key'
df = pd.read_csv('indicadores_ma.csv',usecols=['geocod','Impacto (2015)'],sep=';')
with open(r'county_ma.geojson') as f:
geojson = json.load(f)
northamerica = cg.choropleth(mapbox_access_token, df, geojson, 'geocod')
fig = northamerica.choroplot()
offline.plot(fig, auto_open=True)
Входные файлы данных:
** indicadores_ma.csv
county_ma.geojson
{
"type": "FeatureCollection",
"features": [{
"type": "Feature",
"geometry": {
"type": "MultiPolygon",
"coordinates": [[[[-42.815, -5.3142],...]]]]
},
"properties": {
"geocod": 2112209,
"name": "Timon/MA"
}
}, {
"type": "Feature",
"geometry": {
"type": "MultiPolygon",
"coordinates": [[[[-41.8141, -2.7393],...]]]
},
"properties": {
"geocod": 2100907,
"name": "Araioses/MA"
}
}
]
}
В
fig = northamerica.choroplot()
Я получаю сообщение об ошибке:
File "pandas/_libs/lib.pyx", line 2217, in pandas._libs.lib.map_infer
TypeError: descriptor 'lower' requires a 'str' object but received a 'int'
Что я делаю не так?
Файл, используемый в этом сообщении, можно загрузить с здесь .