2014-01-28 29 views
1

我在CSV读取到的数据帧如下:as.Date不保留小时和分钟的信息中的R

data <- read.csv("Prices.csv", stringsAsFactors = FALSE) 
data$Timestamp <- as.POSIXct(data$Timestamp, format="%m/%d/%y %H:%M") 

我试图用以下,但除去小时和分钟数据其是我的题。这如何与as.Date一起使用,但保存所有信息?

data$Timestamp <- as.Date(data$Timestamp, format="%m/%d/%y %H:%M") 

这就是数据$时间戳看起来像使用as.POSIXct以上命令这是很好的:

head(data$Timestamp) 
[1] "2013-11-01 09:31:00 EDT" "2013-11-01 09:32:00 EDT" "2013-11-01 09:34:00 EDT" "2013-11-01 09:35:00 EDT" 
[5] "2013-11-01 09:36:00 EDT" "2013-11-01 09:37:00 EDT" 

这是从原来的CSV文件的几个数据点:

Timestamp 
11/1/13 9:31 
11/1/13 9:32 
11/1/13 9:34 
11/1/13 9:35 
11/1/13 9:36 
11/1/13 9:37 

谢谢。

+0

你为什么要转换成'Date'如果你想要小时和分钟的信息? –

回答

4

你想要一个日期时间类POSIXct(或扩展表格POSIXlt),而不是日期。请参阅help(DateTimeClasses)

说出Date丢弃小时和分钟就等于说整数丢弃小数点后的部分 - 即点。 [事实上,日期通常表示为整数,但这里也不一样,因为它实际上是分数天,但我离题了。 ]

概括地说,如果你不具备的日内信息,请使用Date。在所有其他情况下,请使用POSIXct

+0

“说日期丢弃小时和分钟是等于说放弃整数小数点后的部分” - 易为。谢谢德克。在我看来,我记得使用Date和小时和分钟的数据,但现在回头看那个脚本,它只是日期,不是小时或分钟。 – mks212