python - reticulate [R] 的配置/安装问题
问题描述
我正在尝试reticulate
将 Python 模块集成到 R 中,尽管遵循教程(已经安装了miniconda),但似乎没有任何工作正常。我尝试使用默认方式并指定conda和虚拟环境:
> library(reticulate)
> py_config()
# python: C:/Users/juanj/AppData/Local/r-miniconda/envs/r-reticulate/python.exe
# libpython: C:/Users/juanj/AppData/Local/r-miniconda/envs/r-reticulate/python36.dll
# pythonhome: C:/Users/juanj/AppData/Local/r-miniconda/envs/r-reticulate
# version: 3.6.12 (default, Dec 9 2020, 00:11:44) [MSC v.1916 64 bit (AMD64)]
# Architecture: 64bit
# numpy: C:/Users/juanj/AppData/Local/r-miniconda/envs/r-reticulate/Lib/site-packages/numpy
# numpy_version: 1.19.2
> py_install("python-igraph")
# Collecting package metadata (current_repodata.json): ...working... done
# Solving environment: ...working... failed with initial frozen solve. Retrying with flexible solve.
# Solving environment: ...working... failed with repodata from current_repodata.json, will retry with next repodata source.
# Collecting package metadata (repodata.json): ...working... done
# Solving environment: ...working... done
#
# ## Package Plan ##
#
# environment location: C:\Users\juanj\AppData\Local\r-miniconda\envs\r-reticulate
#
# added / updated specs:
# - python
# - python-igraph
# [...]
# python-igraph-0.8.3 | 1.4 MB | ########## | 100%
# Preparing transaction: ...working... done
# Verifying transaction: ...working... done
# Executing transaction: ...working... done
> py_module_available("python-igraph")
# [1] FALSE
## virtual environment
> virtualenv_create("r-reticulate")
# Using Python: C:/Users/juanj/AppData/Local/r-miniconda/envs/r-reticulate/python.exe
# Creating virtual environment "r-reticulate" ... Done!
# Installing packages: "pip", "wheel", "setuptools", "numpy"
# Collecting pip
# [...]
# Successfully installed numpy-1.19.5 pip-21.0.1 setuptools-53.0.0 wheel-0.36.2
# Virtual environment 'r-reticulate' successfully created.
> virtualenv_install("r-reticulate", "python-igraph")
# Using virtual environment "r-reticulate" ...
# Collecting python-igraph
# Downloading python_igraph-0.8.3-cp36-cp36m-win_amd64.whl (1.4 MB)
# Collecting texttable>=1.6.2
# Downloading texttable-1.6.3-py2.py3-none-any.whl (10 kB)
# Installing collected packages: texttable, python-igraph
# Successfully installed python-igraph-0.8.3 texttable-1.6.3
> py_module_available("python-igraph")
# [1] FALSE
## conda
> conda_create("r-reticulate.conda")
# Collecting package metadata (current_repodata.json): ...working... done
# Solving environment: ...working... done
#
# ## Package Plan ##
#
# environment location: C:\Users\juanj\AppData\Local\R-MINI~1\envs\r-reticulate.conda
# [...]
# Preparing transaction: ...working... done
# Verifying transaction: ...working... done
# Executing transaction: ...working... done
# #
# # To activate this environment, use
# #
# # $ conda activate r-reticulate.conda
# #
# # To deactivate an active environment, use
# #
# # $ conda deactivate
#
# [1] "C:\\Users\\juanj\\AppData\\Local\\r-miniconda\\envs\\r-reticulate.conda\\python.exe"
> conda_install("r-reticulate.conda", "python-igraph")
# Collecting package metadata (current_repodata.json): ...working... done
# Solving environment: ...working... failed with initial frozen solve. Retrying with flexible solve.
# Solving environment: ...working... failed with repodata from current_repodata.json, will retry with next repodata source.
# Collecting package metadata (repodata.json): ...working... done
# Solving environment: ...working... done
#
# ## Package Plan ##
#
# environment location: C:\Users\juanj\AppData\Local\R-MINI~1\envs\r-reticulate.conda
# [...]
# python-igraph-0.8.3 | 1.4 MB | ########## | 100%
# Preparing transaction: ...working... done
# Verifying transaction: ...working... done
# Executing transaction: ...working... done
> py_module_available("python-igraph")
# [1] FALSE
知道我错过了什么吗?谢谢。
解决方案
我认为问题在于py_module_available
使用模块名称,而不是 pypi 上的包名称。
你能试一下吗:
> py_module_available("igraph")
推荐阅读
- node.js - 如何将 npm 根文件夹恢复为默认文件夹?
- java - java - 多个微服务一个数据库
- ios - 无法将“TableViewController”类型的值转换为“NSString”
- python - 在分区 Parquet 数据集上应用函数而不进行随机播放
- proxy - 父代理在 3proxy 中不起作用
- php - 更新图片链接到他们自己的 URL
- php - 如何从任何设备打开 localhost 但不使用 ngrok?
- c# - 再次指定了无效的提供程序类型
- python - 如何缩短此二维数组代码?
- javascript - 正确使用 Express 的 res.render() 和 res.redirect()