在ArcGIS中将excel表格作为xy点导入时,我会继续丢失每个点的正确日期时间戳.因此,我格式化了DateTime序列号,创建了.shp,然后阅读.使用readOGR()将shp转换为R.

在R中,我可以使用as.Date()origin = "1899-12-30"参数转换为正确的日期,但时间被忽略了.虽然我看到过只包含一个日期的示例,但我没有看到使用DateTime的工作示例.我一直在使用as.Date()as.POSIXct(),但这个看似简单的任务有点令人沮丧,因此帖子…

我创建了一个样本数据集,其中包含10行正确的日期时间格式以及excel序列号.

*感谢Richard和LateMail对早期障碍的敏锐关注.我已经更正了数据并重新发布在这里.

这是我的样本数据

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)

日期时间为GMT.时间为24小时时钟(即非上午/下午).我在Windows 7上工作,拥有最新的R和ArcGIS 10.

下面的代码获得了正确的日期,但仍然缺少时间.

newDateTime <- as.Date(helpData[ , "ExcelNum"], origin = "1899-12-30")
head(newDateTime)

提前谢谢!

推荐答案

你的数字在数日.转换成秒,你就一切就绪(减少舍入误差)

helpData[["ExcelDate"]] <- 
  as.POSIXct(helpData[["ExcelNum"]] * (60*60*24)
    , origin="1899-12-30"
    , tz="GMT")


#     ID        DateTime ExcelNum           ExcelDate
#  1   1   3/4/2011 6:00 40606.25 2011-03-04 06:00:00
#  2   2  3/11/2011 7:55 40613.33 2011-03-11 07:54:59
#  3   3  3/13/2011 7:55 40615.33 2011-03-13 07:54:59
#  4   4  3/14/2011 0:00 40616.00 2011-03-14 00:00:00
#  5   5 3/14/2011 10:04 40616.42 2011-03-14 10:03:59
#  6   6  3/14/2011 7:55 40616.33 2011-03-14 07:54:59
#  7   7 3/15/2011 19:55 40617.83 2011-03-15 19:54:59
#  8   8  3/17/2011 7:55 40619.33 2011-03-17 07:54:59
#  9   9  3/18/2011 4:04 40620.17 2011-03-18 04:03:59
#  10 10  3/18/2011 4:04 40620.17 2011-03-18 04:03:59

R相关问答推荐

将虚线添加到每个站点的传奇中平均

给定R中另一行中的值,如何插补缺失值

变量计算按R中的行更改

在ggplot Likert条中添加水平线

计算R中的威布尔分布的EDF

向gggplot 2中的数据和轴标签添加大写和星号

如何改变时间图R中的悬停信息?

在df中保留原始变量和新变量

在嵌套列表中查找元素路径的最佳方法

使用Facet_WRAP时更改框图中线的 colored颜色

根据现有列的名称和字符串的存在进行变异以创建多个新列

从多个线性回归模型中提取系数

按时间顺序对不同事件进行分组

QY数据的处理:如何定义QY因素的水平

在列表中排列R数据框中的列顺序

R -使用矩阵reshape 列表

根据纬度和距离连接两个数据集

为什么我对圆周率图的蒙特卡罗估计是空的?

在具有多个响应变量的比例堆叠条形图上方添加总计

排序R矩阵的行和列