R as.Date() 函数 - 日期转换
R as.Date() 函数用于将字符型数据转换为日期类型。
日期类型是 R 中处理时间序列数据的基础,支持加减运算和比较。
as.Date() 函数语法格式如下:
as.Date(x, format = "%Y-%m-%d")
参数说明:
x 字符型日期字符串。
format 日期格式字符串。
| 格式符 | 含义 | 示例 |
|---|---|---|
| %Y | 四位年份 | 2026 |
| %y | 两位年份 | 26 |
| %m | 月份(01-12) | 05 |
| %d | 日期(01-31) | 11 |
| %B | 完整月份名 | May |
实例
# 标准格式转换
date1 <- as.Date("2026-05-11")
print(date1)
print(paste("类型:", class(date1)))
# 非标准格式
date2 <- as.Date("11/05/2026", format = "%d/%m/%Y")
print(date2)
date3 <- as.Date("May 11, 2026", format = "%B %d, %Y")
print(date3)
# 日期运算
today <- as.Date("2026-05-11")
future <- today + 30
print(paste("30 天后:", future))
print(paste("相差天数:", as.numeric(future - today)))
date1 <- as.Date("2026-05-11")
print(date1)
print(paste("类型:", class(date1)))
# 非标准格式
date2 <- as.Date("11/05/2026", format = "%d/%m/%Y")
print(date2)
date3 <- as.Date("May 11, 2026", format = "%B %d, %Y")
print(date3)
# 日期运算
today <- as.Date("2026-05-11")
future <- today + 30
print(paste("30 天后:", future))
print(paste("相差天数:", as.numeric(future - today)))
执行以上代码输出结果为:
[1] "2026-05-11" [1] "类型: Date" [1] "2026-05-11" [1] "2026-05-11" [1] "30 天后: 2026-06-10" [1] "相差天数: 30"

R 语言实例