> str(s)
POSIXct[1:6630], format: "2011-02-14 09:31:00" "2011-02-14 09:32:00" "2011-02-14 09:33:00" "2011-02-14 09:34:00" ...
> head(s)
[1] "2011-02-14 09:31:00 EST" "2011-02-14 09:32:00 EST" "2011-02-14 09:33:00 EST" "2011-02-14 09:34:00 EST"
[5] "2011-02-14 09:35:00 EST" "2011-02-14 09:36:00 EST"
>
> head(AMKR)
date_holding time_holding close
1 2011-02-14 09:31:00 7.66
2 2011-02-14 09:32:00 7.58
3 2011-02-14 09:33:00 7.54
4 2011-02-14 09:34:00 7.54
5 2011-02-14 09:35:00 7.56
6 2011-02-14 09:36:00 7.54
> as.xts(AMKR[,-1:-2], s) -> newAMKR
> head(newAMKR)
[,1]
2011-02-14 00:00:00 7.74
2011-02-14 00:01:00 7.74
2011-02-14 00:02:00 7.74
2011-02-14 00:03:00 7.74
2011-02-14 00:04:00 7.74
2011-02-14 00:05:00 7.73
如您所见,时间已经改变。
代码“AMKR”是从位于同一台机器上的 mySQL 数据库中提取的。
如果有人能指出我正确的方向,将不胜感激。
=================================================
更新:有几个问题。
1) 将数据上传到 mySQL 是在时间格式设置为 %h:%i:%s 的情况下完成的,而时间格式应该设置为 %H:%i:%s (注意大写H)。
2)我删除了 mySQL 中的数据并使用H重新上传。现在,我得到了 12:00:00 的时间,因为报价发生在下午 12 点,但它显示为 .xts 将其解释为上午 12 点,因此发生在 12:00:00 和 04:00:00 之间的所有报价都被解释为发生在上午_ _
我想知道为什么 mySQL 没有像我在 LOAD DATA 查询中使用%H那样将时间转换为 24 小时制格式。我想知道是否有办法通过 as.POSIXct 强制更改 R。正在调查......