首页 > 解决方案 > readRDS 在 Windows 中似乎不起作用的原因是什么?

问题描述

我正在尝试使我的代码可移植到 Windows,并意识到即使我file.path用来创建路径,该readRDS功能仍然无法正常工作,例如:

file.exists('C:/temp/HarvardX-Skillability/data/rds/Users.rds')
> TRUE
readRDS('C:/temp/HarvardX-Skillability/data/rds/Users.rds')
> Error in readRDS("C:/temp/HarvardX-Skillability/data/rds/Users.rds") : 
  error reading from connection

我也试过:

 file.exists('data/rds/Users.rds')
 > TRUE
 readRDS('data/rds/Users.rds')
 > Error in readRDS("data/rds/Users.rds") : error reading from connection

这是为什么?我该如何解决?在 Ubuntu 18.04 中完美运行...

标签: rwindowsgitrdsgit-lfs

解决方案


问题似乎在于从 GitHub下载/克隆文件。git clone您的存储库上运行后,当我Tags.rds在文本编辑器中打开本地副本时,我看到:

version https://git-lfs.github.com/spec/v1
oid sha256:b4a2cb3775126a3895e9533ef9ef4ad786b2021cfd1660b07028fbef85b025bb
size 641098

(这是文件的全部内容)。此外,运行file Tags.rds(在 MacOS 上的终端中)报告Tags.rds: ASCII text. (所有.rds文件都是这样的。)

GitHub Web 界面确认您的文件在 repo 上正常:

在此处输入图像描述

这个问题看起来很相关。安装 Git LFS 并运行后git lfs pull,我下载了完整的文件(并且readRDS()似乎工作正常)。


推荐阅读