You need to enable JavaScript to run this app. R语言中将14位时间字符串转换为日期变量与独立时间列的方法
优惠活动
大模型
产品
解决方案
定价
更多

R语言中将14位时间字符串转换为日期变量与独立时间列的方法

R处理时间字符串拆分日期时间列操作方法

方法1:使用lubridate包(推荐,写法更简洁不易出错)

  • 第一步:安装并加载lubridate包
install.packages("lubridate")
library(lubridate)
  • 第二步:解析原始时间字符串为日期时间类型
    假设你导入后的数据集名为df,存储原始时间字符串的列名为raw_time,执行如下代码:
df$datetime <- ymd_hms(df$raw_time)

该函数会自动识别%Y%m%d%H%M%S格式的字符串,转换为R内置的日期时间类型。

  • 第三步:拆分出独立的日期列和时间列
# 生成日期列,格式为YYYY-MM-DD
df$date <- as.Date(df$datetime)
# 生成时间列,格式为HH:MM:SS
df$time <- format(df$datetime, "%H:%M:%S")

方法2:使用Base R原生函数(无需安装额外包)

直接用原生的strptime函数解析即可,后续拆分步骤和上述一致:

# 解析原始时间字符串
df$datetime <- strptime(df$raw_time, format = "%Y%m%d%H%M%S")
# 拆分日期和时间列
df$date <- as.Date(df$datetime)
df$time <- format(df$datetime, "%H:%M:%S")

测试样例

你可以用单条样例测试效果:

raw_time <- "20140929120000"
# 用lubridate测试
datetime <- ymd_hms(raw_time)
print(as.Date(datetime)) # 输出 "2014-09-29"
print(format(datetime, "%H:%M:%S")) # 输出 "12:00:00"

内容的提问来源于stack exchange,提问作者Frost

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.15 20:15:03