微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么R库'ssw'不能找到通过pip3安装的python模块,尽管可以满足pip3模块的安装要求?

如何解决为什么R库'ssw'不能找到通过pip3安装的python模块,尽管可以满足pip3模块的安装要求?

我在Ubuntu 20.04.1 LTS focal上,并且正在使用R。我想在R中安装一个库,以基于Smith-Waterman算法但通过更快的实现来执行局部序列比对。

R库为 ssw ,可在以下位置找到:https://github.com/nanxstats/ssw-r click link to github repo

描述: ssw-r为SSW提供了R接口,它是Smith-Waterman算法的快速实现,用于使用SIMD进行序列比对。 ssw-r当前基于Python包ssw-py

构建

当我尝试按照README.md步骤安装它时,

  • remotes::install_github("nanxstats/ssw-r"),执行正常
  • reticulate::use_python("/usr/local/bin/python3"),也可以执行
  • library("ssw"),甚至可以很好地加载库
  • "ACGT" %>% align("TTTTACGTCCCCC"),运行示例无法很好地执行以产生此错误
> "ACGT" %>% align("TTTTACGTCCCCC")
Error: Python module ssw was not found.

Detected Python configuration:

python:         /root/.local/share/r-miniconda/envs/r-reticulate/bin/python
libpython:      /root/.local/share/r-miniconda/envs/r-reticulate/lib/libpython3.6m.so
pythonhome:     /root/.local/share/r-miniconda/envs/r-reticulate:/root/.local/share/r-miniconda/envs/r-reticulate
version:        3.6.11 | packaged by conda-forge | (default,Aug  5 2020,20:09:42)  [GCC 7.5.0]
numpy:          /root/.local/share/r-miniconda/envs/r-reticulate/lib/python3.6/site-packages/numpy
numpy_version:  1.19.1

我已通过以下方式安装了ssw-py作为README.md的请求;

$ sudo pip3 install ssw-py
Requirement already satisfied: ssw-py in /usr/local/lib/python3.8/dist-packages (0.2.6)

我不确定依赖项有什么问题。第一次在R中安装ssw时,系统提示我是否要安装miniconda并选择是。我的系统上没有安装anaconda。 (在Ubuntu bionic 18.04上,我能够成功安装anaconda,无论我尝试对焦多少次都行不通,例如,安装程序最初将其放在一个文件中的/ root / anaconda3中)

要使此库ssw正常运行,我需要解决什么问题?

解决方法

我设法通过在语句library("ssw")之前使用此命令来解决此问题:

Sys.setenv(RETICULATE_PYTHON = "/usr/bin/python3")

README.md reticulate::use_python("/usr/local/bin/python3")中规定的语句未连接到python安装,并且该语句在我的系统上有效。这是通过以下方式发现的:

$ which python3
/usr/bin/python3

,然后将此目录用作python连接的系统环境

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。