简体   繁体   English

如何在小时,时间,秒列中中断时间(因子类型-HH:MM:SS)? IN R

[英]How to break time(factor type - HH:MM:SS) in hour, time, seconds column? IN R

I have a dataset with a column time(HH:MM:SS-ZZ). 我有一个列时间为(HH:MM:SS-ZZ)的数据集。 The time is of class factor. 时间是最重要的因素。 I want to create new column for hour, min, sec(class:numeric) in the dataset. 我想为数据集中的小时,分​​钟,秒(类:数字)创建新列。 How can i do that ..any thoughts? 我该怎么办..任何想法?

Just use strsplit function: 只需使用strsplit函数:

strsplit("23:52:23-09", "[:-]")

A complete example: 一个完整的例子:

a<-data.frame(Date=c("04:52:00-09", "03:22:23-09", 
                     "23:00:23-09", "15:12:23-09"), Dummy=1:4)
b<-data.frame(strsplit(as.character(a$Date), "[:-]"))
colnames(b)<-c("HH", "MM", "SS", "ZZ")

Should do it. 应该做。

Create a factor datetime variable to demonstrate: 创建一个因子datetime变量来演示:

test <- as.factor(Sys.time())

Load the lubridate package: 加载润滑包装:

library(lubridate)

Extract the different parts: 提取不同的部分:

hour(test)
minute(test)
second(test)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM