Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
导出到CSV和读取到R的日期_R_Google Docs - Fatal编程技术网

导出到CSV和读取到R的日期

导出到CSV和读取到R的日期,r,google-docs,R,Google Docs,我正在使用R[1]包RGoogleDocs[2]连接到我的Google文档,获取电子表格列表,并从指定的电子表格导入特定的工作表。我可以做到这一点,没有问题的例子如下所示 我遇到的问题是日期列。在GoogleDocs下,我选择将它们格式化为YYYY-MM-DD,它们在GoogleDocs中显示良好 但是,导入到R的导出CSV将这些字段作为数字字段,例如 Displayed in Google Docs > As imported to R 2013-02-15 > 41320 2

我正在使用R[1]包RGoogleDocs[2]连接到我的Google文档,获取电子表格列表,并从指定的电子表格导入特定的工作表。我可以做到这一点,没有问题的例子如下所示

我遇到的问题是日期列。在GoogleDocs下,我选择将它们格式化为YYYY-MM-DD,它们在GoogleDocs中显示良好

但是,导入到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=”“)函数)

为了解决这个问题,我将日期列的格式设置为纯文本格式,但尽管输入日期时前导的0表示天/月<10,但它们导出时没有,因此as.date()函数抱怨它们的格式不标准

因此,我有两个选择/问题

1) 谷歌文档内部用于表示日期的来源是什么?(我已经通过谷歌帮助搜索过了,但是没有找到,更广泛的网络搜索也没有结果)

2) 是否有将日期作为字符串导出到CSV的方法?(我已经试过了,但是当Google文档中的日期设置为“纯文本”时,输入日期时键入的前导零('0')在导出中不存在,这意味着R抱怨日期采用非标准格式*)

提前感谢您抽出时间

松弛线

[1] [2]

  • 我可以编写一个函数,将日/月/年作为单独的元素提取出来,然后进行推导,但我认为有一个更直接的方法

关于你的问题1):显然,谷歌文档使用1899-12-30作为日期来源:

as.Date(41320, origin="1899-12-30")
# [1] "2013-02-15"
# etc

太好了,谢谢。你是怎么发现的?快速试错?