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

使用gs_new()写入data.table至谷歌表格耗时过久,是否正常?

这种耗时完全不正常!

270条观测值+21个变量的数据集,正常写入Google Sheets应该只需要几秒到几十秒,十分钟的耗时明显是工具链的效率问题。

你现在用的googlesheets包其实已经处于维护状态,它基于Google Sheets的v3 API,这个版本的API本身在批量数据写入上效率就很低——大概率是它在后台逐行甚至逐单元格发送请求,才导致了这种离谱的耗时。

最快的解决办法:换成googlesheets4包

Google官方现在推荐使用googlesheets4包(基于v4 API),它支持批量写入,能把你的写入时间压缩到正常范围。给你个适配的代码示例:

# 安装并加载包
install.packages("googlesheets4")
library(googlesheets4)
library(data.table)

# 新建表格并写入数据
gs4_create(
  title = "test",
  sheets = list(DATA__test = DT)
)

如果是要写入已有的表格,用write_sheet(DT, ss = "你的表格ID或标题", sheet = "DATA__test")就行。

如果你一定要用旧的googlesheets包

可以试试先把data.table转成data.frame,然后用gs_edit_cells的批量参数来减少请求次数,比如:

require(googlesheets)
gs_file <- gs_new(title = 'test', ws_title = 'DATA__test')
# 转成data.frame,按批量写入
gs_edit_cells(gs_file, ws = "DATA__test", input = as.data.frame(DT), byrow = FALSE)

不过这个方法的效率还是远不如googlesheets4,还是更推荐换包解决根本问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 04:15:17