23得票4回答
在R中,给定出生日期和任意日期,高效准确地计算年龄(以年、月或周为单位)。

我需要完成一个常见任务,即根据出生日期和任意日期计算年龄(以年、月或周为单位)。然而,我通常需要对许多记录(> 3亿)执行此操作,因此性能是一个关键问题。 经过在SO和Google上的快速搜索,我找到了三种选择: 使用常见的算术过程(/365.25)(link) 使用包lubridate...

23得票3回答
将日期时间转换为格式化的时间字符串。

我不知道为什么它不工作。这是我的代码: > t <- hms("14:11:49") > t [1] "14H 11M 49S" t <- t + minutes(3) > format(t, format="%H:%M:%S") [1] "14H 14M 49...

22得票2回答
为什么365天等于80000年?

我有一个 lubridate 的 interval ,想要将其转化为整数天数。但是我得到了以下奇怪的中间结果:library("lubridate") i1 <- interval("2015-01-01 00:00:00", "2016-01-01 00:00:00") i1 <...

21得票6回答
如何将重叠的时间段压缩/合并?

我有一个大的数据集,其中包含由“开始”和“结束”列定义的时间段。一些时期重叠。 我想将所有重叠的时间段组合(压平/合并/折叠)为一个“开始”值和一个“结束”值。 以下是一些示例数据: ID start end 1 A 2013-01-01 2013-01-05 ...

21得票2回答
将年/周转换为日期对象

字符串包含'YEAR WEEK',我想使用parse_date_time()将其转换为日期对象,但是我无法使代码运行: 字符串中含有的'YEAR WEEK',我希望能够使用parse_date_time()将其转化为日期对象,但是我的代码无法正常工作:parse_date_time(c("2...

18得票1回答
增加ggplot2中日期轴刻度的数量

我有一些时间序列数据需要绘制,我希望坐标轴的刻度更加细致。例如:library(lubridate) library(ggplot2) library(scales) dat <- data.frame(date = paste0("09-01-", gsub(" ", "0", fo...

18得票2回答
避免日期操作中的舍入陷阱的最佳实践

我正在进行一些日期/时间操作,并在转换日期->时间->日期时遇到无法解释但令人不快的往返问题。我暂时通过在适当的点上四舍五入来解决了这个问题,但我想知道是否有更清洁的日期处理最佳实践。我正在使用一些基本的R和lubridate函数。 简而言之,是否有一种好的简单方法可以将十进制日期(YYYY...

16得票3回答
在R中将日期格式化为年月

我希望保留当前的日期列,以年-月格式为日期。目前它被转换为字符格式。我已经尝试了as_datetime,但它将所有值强制转换为NA。 我要寻找的格式是:"2017-01"library(lubridate) df<- data.frame(Date=c("2017-01-01","201...

16得票2回答
从今天的日期减去1个月会得到NA(缺失值)。

我有一个脚本,根据一些时间段对我的数据进行子集处理,并希望将发生在最近一个月内的所有记录都进行子集处理。但是,如果我尝试从今天的日期减去一个月,它会得到一个NA:> today <- Sys.Date() > today [1] "2017-03-29" > today...

16得票2回答
计算两列之间的时间差

在将POSIXCT格式的因子转换为日期时间格式后,我想要计算pos1和pos2之间的日期时间差异。但是,当我对整个数据集执行此操作时,控制台只输出数字,并且数据框以这些数字显示,如您所见。 在尝试计算差异时,如何在数据框中获取小时数?我正在使用lubridate包,是否有任何函数可以实现? ...