python - 如何在 Julia 中使用 Anaconda 中不可用且需要通过 pip 安装的 Python 包
问题描述
我使用 Julia 1.6.0(截至今天为测试版)并希望plfit
通过PyCall
.
不幸的是,plfit
在 Anaconda 中不可用,因此我无法使用 Conda 模块安装它:
julia> using Conda
julia> Conda.add("plfit")
[ Info: Running `conda install -y plfit` in root environment
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
PackagesNotFoundError: The following packages are not available from current channels:
- plfit
...
如何从 Julia 安装这个软件包?
解决方案
您可以通过模块pip
从 Julia运行。PyCall
此外,该包plfit
引用了cython
Python 内置 Julia 中不存在且不会自动安装的包。因此,您需要这样做:
using PyCall
run(`$(PyCall.python) -m pip install --upgrade cython`)
run(`$(PyCall.python) -m pip install plfit`)
现在该plfit
软件包将可供 Julia 使用:
julia> plfit = pyimport("plfit");
julia> x=rand(1000);
julia> myplfit = plfit.plfit(x)
PYTHON plfit executed in 0.064029 seconds
xmin: 0.397582 n(>xmin): 625 alpha: 2.92546 +/- 0.0770183 Log-Likelihood: 36.3511 ks: 0.197384 p(ks): 4.09676e-22
PyObject <plfit.plfit.plfit object at 0x0000000064871A90>
最后,请注意,有时以这种方式安装的某些包可能会在查找二进制 Python 依赖项时遇到问题(plfit 不是这种情况)。在这种情况下,您需要将该文件夹添加%HOMEPATH%\.julia\conda\3\Library\bin
到您的PATH
环境变量中(根据您的配置和平台替换%HOMEPATH%\.julia
为或适当的系统路径)。JULIA_DEPOT_PATH
推荐阅读
- gcc - 无法打开源文件“begin_code.h”(“SDL2/SDL.h”的依赖项)
- node.js - 使用节点 express 的 express 验证器生成的错误
- asp.net-core - User.IsInRole 在每个用户切换到一个角色后返回 false
- javascript - Google Apps 脚本中的 Classroom API IndividualStudentsOptions
- java - 如何使用 Paths.of 解决此错误?
- bash - 在 bash 脚本中交叉使用 yml 变量
- node.js - react 应该在带有 node.js 的车把上使用吗?
- swift - 如何将导航按钮添加到 SwiftUI 应用程序?
- pandas - 不同大小的分层抽样
- go - 如何检查 gRPC 端点返回的值?