Проблемы совместимости с Python между Shapely и геопандами

#python #geopandas #shapely

Вопрос:

Я пытаюсь запустить shapely.ops, и мое ядро умирает. Я считаю, что это связано с контролем версий между GeoPandas и Shapely, но я не могу разобраться в проблемах.

Для получения дополнительной информации обратите внимание, что мое ядро умирает при запуске этой строки:

 import shapely
merged = vertical_stack.groupby('name').geometry.agg(shapely.ops.unary_union)
 

Элемент, который я пытаюсь объединить и растворить, — это рамка geopandas.geodataframe.Геодезический каркас

Для получения информации о версиях модулей см. Ниже:

 pip list

Package                            Version
---------------------------------- ----------------------
affine                             2.3.0
aiohttp                            3.7.3
alabaster                          0.7.12
anaconda-client                    1.7.2
anaconda-navigator                 1.9.12
anaconda-project                   0.8.3
applaunchservices                  0.2.1
appnope                            0.1.0
appscript                          1.1.1
area                               1.1.1
argh                               0.26.2
arrow                              0.17.0
asgiref                            3.3.1
asn1crypto                         1.3.0
astroid                            2.4.2
astropy                            4.0.1.post1
async-timeout                      3.0.1
atomicwrites                       1.4.0
attrs                              19.3.0
autopep8                           1.5.3
Babel                              2.8.0
backcall                           0.2.0
backports.functools-lru-cache      1.6.1
backports.shutil-get-terminal-size 1.0.0
backports.tempfile                 1.0
backports.weakref                  1.0.post1
beautifulsoup4                     4.9.1
bitarray                           1.4.0
bkcharts                           0.2
bleach                             3.1.5
bokeh                              2.1.1
boto                               2.49.0
Bottleneck                         1.3.2
branca                             0.4.1
brotlipy                           0.7.0
cairocffi                          1.2.0
CairoSVG                           2.5.2
census                             0.8.15
CensusData                         1.10
certifi                            2020.6.20
cffi                               1.14.0
chardet                            3.0.4
click                              7.1.2
click-plugins                      1.1.1
cligj                              0.5.0
cloudpickle                        1.5.0
clyent                             1.2.2
colorama                           0.4.3
conda                              4.10.1
conda-build                        3.18.11
conda-package-handling             1.7.0 0.g7c4a471.dirty
conda-verify                       3.4.2
configparser                       5.0.2
contextlib2                        0.6.0.post1
crayons                            0.4.0
cryptography                       2.9.2
cssselect2                         0.4.1
cycler                             0.10.0
Cython                             0.29.21
cytoolz                            0.10.1
dask                               2.20.0
dataframe-image                    0.1.1
decorator                          4.4.2
defusedxml                         0.6.0
descartes                          1.1.0
diff-match-patch                   20200713
distributed                        2.20.0
Django                             3.1.7
docopt                             0.2.0
docopt-ng                          0.7.2
docopt-plus                        0.6.3a1
docutils                           0.16
entrypoints                        0.3
et-xmlfile                         1.0.1
fastcache                          1.1.0
filelock                           3.0.12
Fiona                              1.8.17
flake8                             3.8.3
Flask                              1.1.2
folium                             0.0.0
fpdf                               1.7.2
fsspec                             0.7.4
future                             0.18.2
fuzzymatcher                       0.0.5
fuzzywuzzy                         0.18.0
GDAL                               3.1.3
geographiclib                      1.50
geojson                            2.5.0
geomet                             0.2.1.post1
geopandas                          0.9.0
geopy                              2.1.0
geoutils                           0.0.1
gevent                             20.6.2
glob2                              0.7
gmpy2                              2.0.8
greenlet                           0.4.16
h3                                 3.7.0
h5py                               2.10.0
HeapDict                           1.0.1
html5lib                           1.1
idna                               2.5
image                              1.5.33
imageio                            2.9.0
imagesize                          1.2.0
importlib-metadata                 1.7.0
intervaltree                       3.0.2
ipykernel                          5.3.2
ipython                            7.16.1
ipython-genutils                   0.2.0
ipywidgets                         7.5.1
isort                              4.3.21
itsdangerous                       1.1.0
jdcal                              1.4.1
jedi                               0.17.1
jellyfish                          0.6.1
Jinja2                             2.11.2
jinja2-time                        0.2.0
joblib                             0.16.0
json5                              0.9.5
jsonschema                         3.2.0
jupyter                            1.0.0
jupyter-client                     6.1.6
jupyter-console                    6.1.0
jupyter-core                       4.6.3
jupyterlab                         2.1.5
jupyterlab-server                  1.2.0
keplergl                           0.2.1
keyring                            21.2.1
kiwisolver                         1.2.0
lazy-object-proxy                  1.4.3
libarchive-c                       2.9
libpysal                           4.4.0
llvmlite                           0.33.0 1.g022ab0f
locket                             0.2.0
lxml                               4.5.2
make                               0.1.6.post2
MarkupSafe                         1.1.1
matplotlib                         3.3.2
mccabe                             0.6.1
Metaphone                          0.6
mistune                            0.8.4
mkl-fft                            1.1.0
mkl-random                         1.1.1
mkl-service                        2.3.0
mock                               4.0.2
more-itertools                     8.4.0
mplleaflet                         0.0.5
mpmath                             1.1.0
msgpack                            1.0.0
multidict                          5.1.0
multipledispatch                   0.6.0
munch                              2.5.0
navigator-updater                  0.2.1
nbconvert                          5.6.1
nbformat                           5.0.7
networkx                           2.5
nltk                               3.5
nose                               1.3.7
notebook                           6.0.3
numba                              0.50.1
numexpr                            2.7.1
numpy                              1.19.2
numpydoc                           1.1.0
objectpath                         0.6.1
olefile                            0.46
openpyxl                           3.0.4
orca                               1.5.4
osm2geojson                        0.1.29
osmnx                              0.16.1
OSMPythonTools                     0.2.9
osmtogeojson                       0.0.2
overpass                           0.7
overpassify                        1.2.2
overpy                             0.4
packaging                          20.4
pandas                             1.1.3
pandocfilters                      1.4.2
parso                              0.7.0
partd                              1.1.0
path                               13.1.0
pathlib2                           2.3.5
pathtools                          0.1.2
patsy                              0.5.1
pep8                               1.7.1
pexpect                            4.8.0
pickleshare                        0.7.5
Pillow                             7.2.0
pip                                20.1.1
pkginfo                            1.5.0.1
plotly                             4.14.3
pluggy                             0.13.1
ply                                3.11
prometheus-client                  0.8.0
prompt-toolkit                     3.0.5
psutil                             5.7.0
ptyprocess                         0.6.0
py                                 1.9.0
pycodestyle                        2.6.0
pycosat                            0.6.3
pycparser                          2.20
pycurl                             7.43.0.5
pydocstyle                         5.0.2
pyflakes                           2.2.0
pygeos                             0.10
pyGeoTile                          1.0.6
Pygments                           2.6.1
pylint                             2.5.3
pyodbc                             4.0.0-unsupported
pyOpenSSL                          19.1.0
pyparsing                          2.4.7
Pyphen                             0.10.0
pyproj                             2.6.1.post1
pyrsistent                         0.16.0
PySocks                            1.7.1
pytest                             5.4.3
pytest-sugar                       0.9.4
python-dateutil                    2.8.1
python-dotenv                      0.14.0
python-jsonrpc-server              0.3.4
python-language-server             0.34.1
python-Levenshtein                 0.12.0
PyTrie                             0.4.0
pytz                               2020.1
PyWavelets                         1.1.1
PyYAML                             5.3.1
pyzmq                              19.0.1
q                                  2.6
QDarkStyle                         2.8.1
QtAwesome                          0.7.2
qtconsole                          4.7.5
QtPy                               1.9.0
queuelib                           1.5.0
rasterio                           1.2.5
regex                              2020.6.8
requests                           2.25.1
retrying                           1.3.3
rope                               0.17.0
Rtree                              0.9.4
ruamel-yaml                        0.15.87
scikit-image                       0.16.2
scikit-learn                       0.23.1
scipy                              1.5.0
seaborn                            0.10.1
selenium                           3.141.0
Send2Trash                         1.5.0
setuptools                         49.2.0.post20200714
Shapely                            1.7.1
simplegeneric                      0.8.1
simplejson                         3.17.2
singledispatch                     3.4.0.3
six                                1.15.0
snowballstemmer                    2.0.0
snuggs                             1.4.7
sortedcollections                  1.2.1
sortedcontainers                   2.2.2
soupsieve                          2.0.1
Sphinx                             3.1.2
sphinxcontrib-applehelp            1.0.2
sphinxcontrib-devhelp              1.0.2
sphinxcontrib-htmlhelp             1.0.3
sphinxcontrib-jsmath               1.0.1
sphinxcontrib-qthelp               1.0.3
sphinxcontrib-serializinghtml      1.1.4
sphinxcontrib-websupport           1.2.3
spyder                             4.1.4
spyder-kernels                     1.9.2
SQLAlchemy                         1.3.18
sqlparse                           0.4.1
statsmodels                        0.11.1
sympy                              1.6.1
tables                             3.6.1
tabulate                           0.8.7
tblib                              1.6.0
termcolor                          1.1.0
terminado                          0.8.3
testpath                           0.4.4
threadpoolctl                      2.1.0
tile-comparator                    2.2.1
tinycss2                           1.1.0
toml                               0.10.1
toolz                              0.10.0
tornado                            6.0.4
tqdm                               4.47.0
traitlets                          4.3.3
traittypes                         0.2.1
typing-extensions                  3.7.4.2
ujson                              1.35
unicodecsv                         0.14.1
universities                       1.1.0
university-scraper                 0.0.2
urllib3                            1.21.1
us                                 2.0.2
validators                         0.14.0
watchdog                           0.10.3
wcwidth                            0.2.5
WeasyPrint                         52.5
webdriver-manager                  3.3.0
webencodings                       0.5.1
Werkzeug                           1.0.1
wheel                              0.34.2
widgetsnbextension                 3.5.1
wrapt                              1.11.2
wurlitzer                          2.0.1
xarray                             0.16.2
xcode                              0.0.1
xlrd                               1.2.0
XlsxWriter                         1.2.9
xlwings                            0.19.5
xlwt                               1.3.0
xmltodict                          0.12.0
yapf                               0.30.0
yarl                               1.6.3
zict                               2.0.0
zipp                               3.1.0
zope.event                         4.4
zope.interface                     4.7.1
 

Комментарии:

1. Есть ли причина не использовать dissolve метод?

2. Вы правы. Я смог добиться желаемых результатов с помощью растворения

3. FWIW в прошлом я сталкивался с тем, что ядро умирало, если я использовал shapely.ops в геометрии pygeos (т. Е. Геопанды, настроенные для использования серверной части pygeos).