簡體   English   中英

R中的日期和時間總計

[英]Aggregate date and time in R

我的數據具有這樣的開始和結束時間戳記:

200401010000 200401010030
200401010030 200401010100
200401010100 200401010130 and so on...

我正在嘗試使用lubridate和as.POSIXct將這些字段轉換為%YYYY%MM%DD%HH%MM格式,但是我只能得到NA。 任何幫助將不勝感激。 我的目標是匯總每個月的數據。 到目前為止,我使用的代碼如下:

start_time = as.POSIXct(dat$TIMESTAMP_START, format = "%YYYY%MM%DD %HH%MM",origin = "2004-01-01 00:00", tz="EDT")
stop_time = as.POSIXct(dat$TIMESTAMP_END, format = "%YYYY%MM%DD%HH%MM",origin = "2004-01-01 00:30", tz="EDT")
dat$interval <- interval(start_time, stop_time)

我可以看到兩個問題:

  1. 如果您已經在使用lubridate ,則應該使用ymd_hm()函數,該函數更干凈。

  2. 您不能將該函數應用於向量(我假設dat$TIMESTAMP_STARTdat$TIMESTAMP_END是); 為此,您可以使用:

     start_time <- sapply(dat$TIMESTAMP_START, ymd_hm()) end_time <- sapply(dat$TIMESTAMP_END, ymd_hm()) 

    這會將功能應用於向量中的每個項目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM