【发布时间】:2013-10-10 22:40:31
【问题描述】:
当 Excel 表在 ArcGIS 中作为 xy 点导入时,我会继续丢失每个点的正确日期时间戳。因此,我已经格式化了 DateTime 序列号,创建了 .shp,并使用 readOGR() 将 .shp 读入了 R。
在 R 中,我可以使用 as.Date() 和 origin = "1899-12-30" 参数转换为正确的日期,但时间被忽略了。虽然我看到了具有唯一日期的示例,但我还没有看到使用 DateTime 的示例。我一直在使用as.Date() 和as.POSIXct(),但是这个看似简单的任务有点令人沮丧,因此发布...
我创建了一个样本数据集,其中包含 10 行正确的 DateTime 格式以及 excel 序列号。
*感谢 Richard 和 thelatemail 对早期障碍的敏锐观察。我已更正数据并在此处重新发布。
这是我的示例数据
helpData <- structure(list(ID = 1:10, DateTime = structure(c(9L, 1L, 2L,
3L, 4L, 5L, 6L, 7L, 8L, 8L), .Label = c("3/11/2011 7:55", "3/13/2011 7:55",
"3/14/2011 0:00", "3/14/2011 10:04", "3/14/2011 7:55", "3/15/2011 19:55",
"3/17/2011 7:55", "3/18/2011 4:04", "3/4/2011 6:00"), class = "factor"),
ExcelNum = c(40606.25, 40613.32986, 40615.32986, 40616, 40616.41944,
40616.32986, 40617.82986, 40619.32986, 40620.16944, 40620.16944
)), .Names = c("ID", "DateTime", "ExcelNum"), class = "data.frame", row.names = c(NA,
-10L))
head(helpData)
日期时间是格林威治标准时间。时间是 24 小时制(即不是上午/下午)。我正在使用 Windows 7,拥有最新的 R 和 ArcGIS 10。
下面的代码得到了正确的日期,但时间仍然缺失。
newDateTime <- as.Date(helpData[ , "ExcelNum"], origin = "1899-12-30")
head(newDateTime)
提前致谢!
【问题讨论】:
标签: r