首页 > 解决方案 > 在R中将日期时间转换为日期

问题描述

我很难将日期时间数据转换为 R 中的日期单元格。数据来自http://data-ral.opendata.arcgis.com/datasets/raleigh-police-incidents-srs/data上的此数据收集。

该网站将第一个“事件日期”列为“29/04/2005, 3:36 am”。但是,当我下载数据并将其导入 R 时,它显示为“1.114710e+12”;我已经复制了下面的前六个单元格。

   INC_DATETIME
          <dbl>
1 1114709760000
2 1104581100000
3 1105283580000
4 1105748940000
5 1107976740000
6 1113182880000

这是 janitor 包中的可靠功能不可渗透的,excel_numeric_to_date(). 关于我需要做什么才能将这些转换为日期的任何线索?

标签: rdatedatetimelubridatejanitor

解决方案


library(tidyverse)
library(lubridate)

data_tbl <- read.csv("Raleigh_Police_Incidents_(SRS).csv")
data_tbl$INC_DATETIME1 <- as.POSIXct(data_tbl$INC_DATETIME/1000, origin = "1970-01-01")
data_tbl$date_format <- as.Date(data_tbl$INC_DATETIME1, format = "%Y-%m-%d")
data_tbl <- data_tbl %>%  
    mutate(only_date = ymd(date_format), date = day(only_date))
head(data_tbl$date)

# [1] 28 1 9 15 9 11


推荐阅读