【问题标题】:How to remove duplicate timestamp in R with a column having both Date-Time and Zone如何使用具有日期时间和区域的列删除 R 中的重复时间戳
【发布时间】:2018-06-12 17:54:11
【问题描述】:

我在 R 中有一个包含几列的数据框。我正在复制粘贴下面的列之一。数据框中的列类型为整数,+00.00代表UTC时间。

D-T-Z                               

06/04/2018 16:30:01 +00:00              
06/05/2018 20:15:00 +00:00              
06/05/2018 12:45:34 +00:00              
06/05/2018 20:15:00 +00:00

当我使用 library(doBy) 和命令 Mach1[firstobs(Mach1[, 16]), ]。我得到下面的结果

  D-T-Z
06/04/2018 16:30:01 +00:00              
06/05/2018 20:15:00 +00:00              
06/05/2018 12:45:34 +00:00

我想过滤数据框并获取不同日期的单个记录。因为时间不同,它返回 06/05/2018 的两条记录,而我只希望返回一条记录。返回什么时间无关紧要。有没有其他方法可以做到这一点?

如果数据框有两列怎么办?

date                                               Hour

1 2018-06-04 325.2 2 2018-06-05 329.5 3 2018-06-06 329.7 4 2018-06-07 329.9 5 2018-06-08 333.2 6 2018-06-13 356.0 7 2018-06-14 364.8 8 2018-06-15 372.6 9 2018-06-15 381.9 10 2018-06-21 383.3 11 2018-06-22 394.5

【问题讨论】:

  • 如果你的时间列已经是日期格式,那么你可以做data[!duplicated(as.Date(data$`D-T-Z`)),]如果不是,你可以将它转换成时间data[!duplicated(strptime(data$`D-T-Z`,"%m/%d/%Y")),]
  • 它与时区有什么关系?
  • edit 您的问题并显示dput(head(Mach1[, 16]) 的输出。这很好地有助于更好地重现问题。谢谢。

标签: r date time zone


【解决方案1】:

你可以使用lubridate:

library(tidyverse)
library(lubridate)

data_frame(date = c("06/04/2018", "06/05/2018", "06/05/2018", "06/05/2018"), time = c("16:30:01", "20:15:00", "12:45:34", "20:15:00"), zone = c("+00:00", "+00:00", "+00:00", "+00:00")) -> x

# all data in one column
x %>% select(date) %>% unique()

# data in separate columns using lubridate
apply(x, 1, function(x) paste(x, collapse = " ")) %>% dmy_hms -> y
y %>% as_date() %>% data_frame() %>% unique()

输出 1:

# A tibble: 2 x 1
  date      
  <chr>     
1 06/04/2018
2 06/05/2018

输出 2:

# A tibble: 2 x 1
  .         
  <date>    
1 2018-04-06
2 2018-05-06

【讨论】:

  • @Paul- 感谢您的回复。仅当存在仅包含日期列的数据框时,您的解决方案才有效。假设我有一个数据框,如上面修改后的问题所示。我怎样才能消除重复的日期?请告诉我。
猜你喜欢
  • 2022-01-12
  • 1970-01-01
  • 2021-02-16
  • 2021-10-21
  • 2020-07-19
  • 2011-08-24
  • 2018-12-30
  • 1970-01-01
  • 2021-04-19
相关资源
最近更新 更多