我正在尝试通过gs_add_row
googlesheets将值对(日期,值)添加到Google表格中。除两个值在Google表格中都显示为日期外,此操作均成功。
我事先检查了“值”以确保它符合预期(例如50),但是“工作表”显示的是日期(1970-02-20)。
我什至尝试将工作表中的单元格格式设置为“数字”,而不是“自动”,但这没什么区别。
有没有办法指定变量类型?
编辑示例代码:
library(lubridate)
library(googlesheets)
library(dplyr)
#URL <- "[some 'published to the web' Google Sheet URL]"
dt <- ymd(today())
val <- 50
URL %>%
gs_url() %>%
gs_add_row(ws=3, input = c(dt, val))
问题是由于使用c
来串联dt
和向量化而引起val
的。使用时c
,输出类型由层次结构中组件的最高类型确定NULL < raw < logical < integer < double < complex < character < list < expression
。因此,在这种情况下,连接的输出(使用c
)属于Date
类。如果已完成c(val, dt)
,则输出类型为numeric
。
最好的选择是:
URL %>%
gs_url() %>%
gs_add_row(ws=3, input = c(as.character(dt), val))
如果第一次无法解决此问题,则可能必须删除旧的工作表,使用相同的数据制作一个新的工作表,然后在新工作表上运行代码。
谢谢!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句