You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将从Excel导入R的日期数值转换为标准日期格式?

解决Excel日期导入R后变数值的问题

你的错误原因

  1. 用错函数:parse_date_time是用来解析字符串格式的日期(比如"2022-02-01"),拿它处理数值型的日期自然无效。
  2. 列名不匹配:你第二个代码里写的列名是Date (DD/MM/YY),但实际数据里的列是Date,列名对不上才会输出NA。

正确的解决方法

方法1:手动转换现有数值为日期

Excel的日期数值是从1900-01-01开始的天数,但因为Excel的历史bug(误把1900年当闰年),用origin="1899-12-30"转换更准确,代码如下:

# 假设你的数据框是new_df
new_df <- data.frame(
  ID = c("01", "02", "03"),
  Date = c(44589, 44590, 44689)
)

# 转换日期列
new_df$Date <- as.Date(new_df$Date, origin = "1899-12-30")

转换后结果:

IDDate
012022-02-01
022022-02-02
032022-05-12

方法2:读取文件时直接识别日期

用readxl包的read_excel函数,读取时指定列类型,自动识别Excel日期:

library(readxl)
# 读取时把第二列设为日期类型
new_df <- read_excel("你的文件路径.xlsx", col_types = c("text", "date"))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 23:30:17