为什么load(...)返回对象的字符名而不是对象本身?

 手机用户2502922685 发布于 2023-01-09 14:45
  • svm
  • 使用R中的包e1071创建svm模型.要使用该模型,我需要保存它并根据需要读取.包有write.svm,但没有read.svm.如果我使用

    model <- svm(x, y)
    
    save(model, 'modelfile.rdata')
    M <- load('modelfile.rdata')
    

    对象M只包含"模型"这个词.

    如何保存svm模型并稍后回读,以应用于一些新数据?

    1 个回答
    • 查看load帮助文件中函数的返回值:

      值:

       A character vector of the names of objects created, invisibly.
      

      所以"模型"确实是预期的价值M.你的svm已恢复原来的名字,即model.

      如果您发现它有点令人困惑,load不会返回加载的对象,而是使用保存它的名称恢复它,请考虑使用saveRDSreadRDS.

      saveRDS(model, 'modelfile.rds')
      M <- readRDS('modelfile.rds')
      

      M应包含您的svm模型.

      我更喜欢saveRDS,readRDS因为有了他们,我知道我在工作区中创建了什么对象 - 请参阅Gavin Simpson的博客文章(在他的回答中链接)进行详细讨论.

      2023-01-09 14:46 回答
    撰写答案
    今天,你开发时遇到什么问题呢?
    立即提问
    热门标签
    PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有