【发布时间】:2018-04-16 00:51:11
【问题描述】:
我有一个数字 excel 日期的向量,即
date <- c(42963,42994,42903,42933,42964)
当使用来自janitor 包的excel_numeric_to_date 函数和来自zoo 包的as.yearmon 函数时,我期待的输出
as.yearmon(excel_numeric_to_date(date)) [1] "Aug 2016" "Sep 2016" "Jun 2017" "Jul 2017" "Aug 2017".
但是,date 向量的第一个元素的转换不正确。 实际结果是:
as.yearmon(excel_numeric_to_date(date)) [1] "Aug 2017" "Sep 2017" "Jun 2017" "Jul 2017" "Aug 2017"
我尝试在 excel_numeric_to_date 中为 date_system 参数使用不同的选项(modern 和 mac pre-2011),但它也无济于事
excel版本是2010
【问题讨论】:
-
你从哪里得到这些数字的?为什么一开始没有将它们作为 dates 加载?在任何情况下,Excel 都使用 OLE 自动化存储格式来存储日期,这就是此类值称为 OA 日期的原因。整数是日期偏移量。小数部分是当天的一个实例。
-
最好的解决方案是修改读取这些值的代码,首先将它们读取为日期。你用什么包来加载它们?你是怎么做到的?