R结合日期和时间列,但将今天的日期混入

标签 r date time

<分区>

嗨,我有一个奇怪的 R 行为:

我有一个包含日期、时间和一些值的数据集:

Date       Time      Global_active_power
2006-12-16 17:24:00  4.216
2006-12-16 17:25:00  5.360
2006-12-16 18:24:00  6.216
2006-12-16 18:25:00  5.390
2006-12-17 07:24:00  3.216
2006-12-17 17:25:00  1.360
2006-12-17 17:24:00  2.216
2006-12-17 18:25:00  6.360

我想从前 2 列构建一个包含 Date+Time 的组合列,其中 1 列是这样的:

Date       Time      Global_active_power  combinedTime
2006-12-16 17:24:00  4.216                2006-12-16 17:24:00

现在的问题是,在这样做的过程中,我总是将今天的日期混入其中:

Date       Time      Global_active_power  combinedTime
2006-12-16 17:24:00  4.216                2006-12-16 2017-07-23  17:24:00

这是我的代码:

Data$Date<- as.Date(Data$Date, "%d/%m/%Y")
Data$Time<-strptime(Data$Time, "%H:%M:%S")
Data1 <-subset(Data, (Date < "2007-02-03"  ) )
Data2 <-subset(Data1,(Date > "2007-01-31"  ) )   
t <- paste((Data2$Date), (Data2$Time))
Data2<-cbind(Data2,t)

在我的时间专栏中,我只有时间。当我在我的代码中运行这一行时,我认为我的问题来了:

 Data$Time<-strptime(Data$Time, "%H:%M:%S")

我突然得到今天的日期加上我专栏的时间。为什么 ?我只是想要时间

谢谢你的帮助

最佳答案

问题确实在你预料的地方:

> strptime(Data$Time, "%H:%M:%S")
[1] "2017-07-23 17:24:00 CEST" "2017-07-23 17:25:00 CEST" "2017-07-23 18:24:00 CEST" "2017-07-23 18:25:00 CEST"
[5] "2017-07-23 07:24:00 CEST" "2017-07-23 17:25:00 CEST" "2017-07-23 17:24:00 CEST" "2017-07-23 18:25:00 CEST"

strptime 还包括今天的日期,而不仅仅是时间。你可以这样解决:

Data$Combined = as.POSIXct(paste0(Data$Date,Data$Time))

关于R结合日期和时间列,但将今天的日期混入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45262603/

相关文章:

使用 R 读取 .mat 文件

r - 创建具有可变尺寸的嵌套数据框

javascript - 将 utc 时间戳设为本地 24 小时制,然后转换回 utc

javascript - 使用javascript获取日期字符串的日期

python - 计算消息之间的时间 CANBUS

javascript:对于数组中的每个项目:创建 div、移动 div 并在时间段后删除 div

r - 列线图因子名称错误不在设计中 : model. 类型 x 时间事件 x.df lambda pred.at

javascript - 在 JavaScript 中处理日期(格式和时区)

java - 重置绑定(bind)时 while 循环的时间复杂度?

r - 为 "["的参数征求类比