R语言 如何从时间戳中提取时间

R语言 如何从时间戳中提取时间

在这篇文章中,我们将看到如何在R编程语言中从时间戳中提取时间。

方法1:在R语言中使用POSIXct类

我们可以以字符串变量的形式存储一个日期变量,然后将其转换为一般格式的时间戳。POSIXct方法可以用来将日期-时间字符串变量转换为POSIXct类。as.POSIXct方法用来在R中存储日期和时间以及相关的时区,POSIXlt类分别保持小时、分钟、秒、日、月和年的记录。POSIXct类以秒为单位保存日期和时间,其中的秒数从1970年1月1日开始。这个方法用于存储和计算。format()方法可以用来从数据时间对象中提取时间戳。

format()方法的语法如下。

format(date, format =) ,

其中,第一个参数说明了日期,第二个参数说明了具体的格式说明。

代码

# declaring string variable
date <- "01/08/2020 12:48:00"
  
# conversion of date variable into 
# POSIXct format 
date <- as.POSIXct(date, format = "%m/%d/%Y %H:%M:%S")
  
# print original complete date
print ("Original TimeStamp: ")
print (date)
  
# extract time from date
time <- format(date, format = "%H:%M:%S")
print("Extraction of time: ")
print(time)
Bash

输出

[1] "Original TimeStamp: "
[1] "2020-01-08 12:48:00 UTC"
[1] "Extraction of time: "
[1] "12:48:00"
Bash

方法2:使用R中的Lubridate包

R中的Lubridate包是用来存储和修改日期格式的。它有大量可用的解析函数,允许以非常简单的方式访问日期和各种格式。这个包中的dmy_hms()方法是最常用的方法,用于以标准格式(数据-月-年-小时-分钟-秒)存储日期。 如果没有指定时区(tz),标准的UTC区将被用于计算。特定的信息可以从这个对象中提取出来,而不影响原始的数据时间对象。format()方法被用来从这个lubridate数据时间对象中提取时间。

dmy_hms()方法的语法如下:

dmy_hms(date)。

它以完整的时间戳格式返回日期。

代码

# invoking specific library 
library(lubridate)
  
# declaring string variable
date <- dmy_hms("01/08/2020 11:18:56")
  
# print original complete date
print ("Original TimeStamp: ")
print (date)
  
# extract time from date
time <- format(date, format = "%H:%M:%S")
print("Extraction of time: ")
print(time)
Bash

输出

[1] "Original TimeStamp: "
[1] "2020-01-08 11:18:56 UTC"
[1] "Extraction of time: "
[1] "11:18:56"
Bash

方法3:使用R中的hms包

R中的hms包也可以用来对日期时间对象进行访问、存储和执行算术操作。首先,可以使用命令.NET将该包安装到环境中。

install.packages("hms")
Bash

然后,该包可以被包含进来,以提供处理日期-时间对象的方法。该库提供了一个函数as_hms(date),用来直接访问日期-时间对象的时间戳,hms代表小时分钟和秒。字符串类型的日期需要首先被转换为标准的POSIXct格式,以便应用这个方法。

as_hms(date)方法将完整的日期时间对象作为输入,并从中提取时间戳。

代码

require("hms")
  
# declaring string variable
date <- "01/08/2020 12:15:38"
  
# conversion of date variable into
# POSIXct format 
date <- as.POSIXct(date, format = "%m/%d/%Y %H:%M:%S")
  
# print original complete date
print ("Original TimeStamp: ")
print (date)
  
# extract time from date
time <- as_hms(date)
print("Extraction of time: ")
print(time)
Bash

输出

[1] "Original TimeStamp: "
[1] "2020-01-08 12:15:38 IST" 
[1] "Extraction of time: " 
[1] 12:15:38
Bash

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册