我正在使用 R[1] 包 RGoogleDocs[2] 连接到我的 Google Docs,获取电子表格列表并从指定的电子表格中导入特定的工作表。按照https://github.com/hammer/google-spreadsheets-to-r-dataframe中给出的示例,我可以做到这一点没问题
我遇到的问题是日期列。在 Google Docs 下,我选择将它们格式化为 YYYY-MM-DD,它们在 Google Docs 中显示良好。
但是,导入到 R 的导出 CSV 将这些作为数字字段,例如....
Displayed in Google Docs > As imported to R
2013-02-15 > 41320
2013-02-19 > 41324
2013-02-26 > 41331
2013-03-22 > 41355
这不一定是问题,因为这些似乎是经过的日期,但我不知道它们被计算的来源是什么。一旦我知道了起源,R 就有一个转换日期/时间的函数,允许指定它,这样我就可以在 R 内部重新格式化(使用 as.Date(date, origin="") 函数)。
为了解决这个问题,我将日期列的格式设置为纯文本,但是尽管在天/月 < 10 中输入带有前导零的日期,但它们被导出时没有,因此 as.Date() 函数抱怨它们是以非标准格式。
因此,我有两个选择/问题...
1) Google Docs 内部用于表示日期的来源是什么?(我通过谷歌帮助搜索过这个,但找不到,更广泛的网络搜索也没有结果)
2) 有没有将日期作为字符串导出到 CSV 的方法?(我已经尝试过了,但是当它们在 Google Docs 中设置为“纯文本”时,输入日期时输入的前导零('0')在导出中不存在,这意味着 R 抱怨日期为非标准格式*)。
在此先感谢您的时间,
松紧线
[1] http://www.r-project.org/ [2] http://www.omegahat.org/RGoogleDocs/
- 我可以编写一个函数来提取日/月/年作为单独的元素并推导出它,但我想有一个更直接的方法。