Невозможно импортировать геопанды, используя сетку в RStudio при вязании спицами

1

Я пытаюсь вязать Rmd файл, используя сетку и Python внутри виртуального. Следующим является мой R-настроенный кусок:

'''{r r-setup}
library(reticulate)

venv_path <- "/path/to/venv/"
use_virtualenv(venv_path, required = TRUE)
'''

Это работает так, как ожидалось. Однако следующий шаг прерывается, когда я пытаюсь импортировать геоданные:

'''{python}
import geopandas as gpd
'''

След:

Error in py_module_import... OSError: Could not find lib c or load any variants...

Ошибка from shapely.geometry import shape, Point File указывает на красивый пакет from shapely.geometry import shape, Point File. Другие библиотеки Python загружаются без проблем внутри блока, например import os.

Из этих сообщений я предполагаю, что он не загружает привязки OGR/GDAL. Однако я не уверен, как это решить.

import geopandas работает без ошибок, когда я запускаю кусок внутри ноутбука, например, не вязание. Он также работает в repl_python() моего проекта. Таким образом, проблема, похоже, в основном связана с knitr и вязанием.

Моя версия RStudio: 1.1.456.

Результат session_info():

sessionInfo()

R version 3.5.1 (2018-07-02)
Platform: x86_64-apple-darwin17.6.0 (64-bit)
Running under: macOS High Sierra 10.13.6

Matrix products: default
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib

locale:
[1] en_NZ.UTF-8/en_NZ.UTF-8/en_NZ.UTF-8/C/en_NZ.UTF-8/en_NZ.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] reticulate_1.10 stringr_1.3.1   dplyr_0.7.6     ggplot2_3.0.0  

loaded via a namespace (and not attached):
[1] Rcpp_0.12.18     pillar_1.3.0     compiler_3.5.1   plyr_1.8.4      
[5] bindr_0.1.1      tools_3.5.1      digest_0.6.17    packrat_0.4.9-3 
[9] jsonlite_1.5     evaluate_0.11    tibble_1.4.2     gtable_0.2.0    
[13] lattice_0.20-35  pkgconfig_2.0.2  rlang_0.2.2      Matrix_1.2-14   
[17] yaml_2.2.0       bindrcpp_0.2.2   withr_2.1.2      knitr_1.20      
[21] rprojroot_1.3-2  grid_3.5.1       tidyselect_0.2.4 glue_1.3.0      
[25] R6_2.2.2         rmarkdown_1.10   purrr_0.2.5      magrittr_1.5    
[29] scales_1.0.0     backports_1.1.2  htmltools_0.3.6  assertthat_0.2.0
[33] colorspace_1.3-2 stringi_1.2.4    lazyeval_0.2.1   munsell_0.5.0   
[37] crayon_1.3.4
Теги:
knitr
geopandas
reticulate

1 ответ

2
Лучший ответ

Мне удалось решить эту проблему, удалив "DYLD_FALLBACK_LIBRARY_PATH", что указывает на то, что мои библиотеки были установлены R. Решение находилось в куске python следующим образом:

'''{python}
import os
FALLBACK_PATH = {"DYLD_FALLBACK_LIBRARY_PATH" : "/usr/local/Cellar/r/3.5.1/lib/R/lib"}
del os.environ["DYLD_FALLBACK_LIBRARY_PATH"]

import geopandas

# Reset the environmental variable.
os.environ.update(FALLBACK_PATH)
'''

Я не уверен, что это самое чистое решение, но оно работает. Также не уверен, что это проблема Mac OSX.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню