#python #dictionary #geopandas
Вопрос:
Я пытаюсь создать интерактивную карту, используя это руководство: Это
Я использую pycharm в среде anaconda, поэтому я не понимаю, когда помещаю свой файл .shp. Это пример кода:
import geopandas as gpd
shapefile = 'data/countries_110m/ne_110m_admin_0_countries.shp'
#Read shapefile using Geopandas
gdf = gpd.read_file(shapefile)[['ADMIN', 'ADM0_A3', 'geometry']]
Это правильный мой каталог?
C:UsersgpontPycharmProjectspythonProject2dataMapmap1ne_110m_admin_0_countries.shp
Ошибка:
C:Usersgpontanaconda3envspythonProject2python.exe C:/Users/gpont/PycharmProjects/pythonProject2/main.py
Traceback (most recent call last):
File "fiona/_shim.pyx", line 83, in fiona._shim.gdal_open_vector
File "fiona/_err.pyx", line 270, in fiona._err.exc_wrap_pointer
fiona._err.CPLE_OpenFailedError: 'map1 e_110m_admin_0_countries.shp' does not exist in the file system, and is not recognized as a supported dataset name.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:/Users/gpont/PycharmProjects/pythonProject2/main.py", line 6, in <module>
gdf = gpd.read_file(shapefile)[['ADMIN', 'ADM0_A3', 'geometry']]
File "C:Usersgpontanaconda3envspythonProject2libsite-packagesgeopandasiofile.py", line 96, in _read_file
with reader(path_or_bytes, **kwargs) as features:
File "C:Usersgpontanaconda3envspythonProject2libsite-packagesfionaenv.py", line 398, in wrapper
return f(*args, **kwargs)
File "C:Usersgpontanaconda3envspythonProject2libsite-packagesfiona__init__.py", line 253, in open
c = Collection(path, mode, driver=driver, encoding=encoding,
File "C:Usersgpontanaconda3envspythonProject2libsite-packagesfionacollection.py", line 154, in __init__
self.session.start(self, **kwargs)
File "fiona/ogrext.pyx", line 484, in fiona.ogrext.Session.start
File "fiona/_shim.pyx", line 90, in fiona._shim.gdal_open_vector
fiona.errors.DriverError: 'map1 e_110m_admin_0_countries.shp' does not exist in the file system, and is not recognized as a supported dataset name.
Process finished with exit code 1
Заранее спасибо.
Giovanni
Комментарии:
1. вы пробовали использовать абсолютный путь
gpd.read_file(r"C:UsersgpontPycharmProjectspythonProject2dataMapmap1ne_110m_admin_0_countries.shp")
?2. да, сейчас ошибки нет, нулевой код выхода-это успешный запуск @giovanni-pontonio, есть ли какой-либо другой код после этого, тогда он будет запущен, для фрагмента, который вы показали, код заканчивается после чтения файла
3. Если я использую это:
import geopandas as gpd # Read shapefile using Geopandas gdf = (gpd.read_file(r"C:UsersgpontPycharmProjectspythonProject2dataMapmap1ne_110m_admin_0_countries.shp"))[['ADMIN', 'ADM0_A3', 'geometry']] # Rename columns gdf.columns = ['country', 'country_code', 'geometry'] gdf.head()
Я не получаю никаких выходных данных, только: Процесс завершен с кодом выхода 04. если вы используете pycharm, вам необходимо распечатать вывод,
print(gdf.head())
Ответ №1:
Похоже, у вас n
на пути есть a, который интерпретируется как символ новой строки. (Обратите внимание на отсутствие n
в 'map1 e_110m_admin_0_countries.shp' does not exist
)
Попробуй
import os
...
gpd.read_file(os.path.normpath(shapefile))