R语言 如何在R中比较时间
R编程语言支持日期和DateTime对象,使用各种不同的格式和指定器。内置框架as.Date函数只负责处理日期,R编程中的库CHRON同时处理日期和时间,不支持时区;而POSIXct和POSIXlt类提供了处理日期时间对象以及时区的支持。日期时间对象可以轻松转换为其他与日期相关的对象。
一个日期字符串可以首先被转换为一个POSIXct对象,然后可以很容易地对其进行基本的算术。POSIXct对象简化了数学运算的过程,因为它们依赖于秒作为时间管理的主要单位。日期被转换为标准时区,即UTC。一个字符串类型的日期对象可以转换为POSIXct对象,使用R中的as.POSIXct(date)方法。由于日期是以秒为单位进行存储的,所以可以通过首先将小时和分钟转换为秒的单位来进行减法。
1小时=16060秒
1分钟=1*60秒
方法1:使用逻辑运算符
POSIXct日期可以使用逻辑运算符来比较日期。逻辑运算符被应用在不同的参数日期之间,并根据输出结果返回一个布尔值TRUE或FALSE。
例子 。
输出
方法2:使用比较运算符
- 使用difftime()方法
R语言中的difftime()方法是用来计算给定时间戳的差异的。它被用来返回一个由单位属性伴随的difftime类本身的对象。”difftime “对象只支持有限的算术运算,也就是说,它们可以被加或减,以及乘或除以一个数字向量。这个方法返回的结果是基于第一个参数的时间戳值减去第二个参数,也就是time1-time2。如果时间1大于时间2,结果为正,如果两个时间段相等,结果为0,其余情况为负。
语法: difftime(time1, time2, tz,units = c(“auto”, “secs”, “minutes”, “hours”, “days”, “weeks”))
参数:
- time1和time2 – 数据时间对象或数字向量
- tz – 时区(可选)
- units – 指明要进行算术的单位
返回类型: 一个对数据时间对象进行算术的difftime对象
例子。
输出
- 使用’-‘运算符
日期对象可以使用减号运算符进行比较,从大日期中减去小日期。返回日期的单位是小时、分钟或秒的最大值。
例子 。
输出