python - 如何将 joblib 转储保存到另一个文件夹?

标签 python joblib

我的目标结构:

  • 工具
    • model_maker.py
  • 模特
    • 模型在这里

我当前的代码,位于工具目录中

joblib.dump(pipeline, "../models/model_full_June2020.jl")

抛出错误:

FileNotFoundError: [Errno 2] No such file or directory: '../models/model_full_June2020.jl'

我想我的路径是错误的。如果我没记错的话,windows 路径和 python 与 python 和其他系统不同。当我将这个东西部署到 heroku 时,我想无论它依赖于哪个特定系统,它都需要正常工作。

最佳答案

正如@john 提到的,这并不意味着 tools 目录是当前目录。

以编程方式设置相对路径,而不是假设您的 cwd 位于 tools 目录中。您可以执行以下操作

在包含脚本的文件中,您想执行如下操作:

import os
dirname = os.path.dirname(__file__)
filename = os.path.join(dirname, 'relative/path/to/file/you/want')
joblib.dump(pipeline, filename )

这应该可以正确定位文件,因为 filename 会产生绝对路径。

关于python - 如何将 joblib 转储保存到另一个文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62536807/

相关文章:

python - pytest 运行后删除缓存文件

python - 无法导入我的 util 模块

python - 为预构建的仅 C 扩展模块创建 Python 包

python - 获取已排序的 numpy 矩阵或 pandas 数据帧的最后一个非 nan 索引

Python:如何在从 setup.py 生成的 msi 安装程序中显示许可证文本

scikit-learn - 多处理支持的并行循环不能嵌套在线程下

python - delay() 函数有什么作用(在 Python 中与 joblib 一起使用时)

python - 如何同时查询多个表?

python - pytorch 模型摘要 - forward func 有多个参数