You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

eurostat包设置cache=TRUE无法生成.RDS缓存文件求助

问题

我通常用CRAN上的eurostat包的get_eurostat()函数批量下载Eurostat数据集,之前功能正常,但最近即使设置cache = TRUE参数,也不会把数据集保存为.RDS文件。

代码如下:

# install.packages("eurostat")
library(eurostat)

datasets <- c("demo_fordagec")

for (i in datasets) {
  
  temp <- get_eurostat (i, 
                        cache = TRUE, 
                        update_cache = TRUE,
                        cache dir = "c: /users/ropia/oneDrive/Dokumenty")
  }

上述代码能正常生成temp数据框,但指定的缓存路径下不会生成.RDS文件,换目标文件夹也没用。我的R版本是4.2.3,eurostat包已更新到最新版本,请问可能的原因是什么?

可能的原因及解决办法
  • 参数拼写错误:代码里的cache dir是错误写法,正确参数名是cache_dir(下划线连接),这是缓存路径不生效的直接原因。修正后函数才能识别参数,往指定路径写入缓存文件。
  • 路径格式错误:你的路径c: /users/ropia/oneDrive/Dokumenty里,c:后面多了空格,应该改成c:/users/ropia/oneDrive/Dokumenty。R的文件路径里多余空格会导致解析失败,无法定位目标文件夹。
  • OneDrive路径权限/同步限制:OneDrive文件夹可能有实时同步限制,或者当前R进程没有写入该路径的权限。可以先尝试把缓存路径改成本地非同步文件夹(比如C:/temp/eurostat_cache),测试是否能生成.RDS文件。
  • eurostat包缓存机制更新:最新版本的eurostat包可能调整了缓存的命名规则或存储结构,缓存文件可能不是直接以数据集名称命名的.RDS文件,而是放在子文件夹里。你可以检查默认缓存路径(通常是~/.cache/eurostat)是否有新增文件,确认缓存是否实际生效。
  • update_cache参数逻辑问题:当update_cache = TRUE时,函数会强制重新下载数据并覆盖缓存,但如果参数拼写错误导致路径未被识别,就不会写入指定位置。修正参数后,若目标路径已有同名缓存文件,update_cache = TRUE会覆盖它。

内容的提问来源于stack exchange,提问作者rideofyourlife

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 05:02:41