【发布时间】:2017-12-08 18:07:02
【问题描述】:
有很多 Excel 文件,都包含相同的列。其中一列称为“日期时间”。问题是,该列包含不同的格式,例如:
2/12/2013 11:59:45 PM
20/2/2013 14:36:58
如您所见,第一个示例末尾包含一个 PM。这是我的问题:
我导入特定文件夹中所有 Excel 文件的代码:
file.list <- list.files(pattern='*.xlsx')
df.list <- lapply(file.list, read_excel)
df <- bind_rows(df.list, .id = "id")
但是,在我运行第二行 (df.list <- lapply(file.list, read_excel)) 之后,我收到了一个警告,例如(期待数字,得到一个日期)。
我尝试了不同的东西,例如分配col_types = "text"(我希望我可以将所有数据作为字符导入,然后更改删除最后的PM并将字符再次更改回as.Date)。但不幸的是,结果是很多NA。
我尝试的另一件事是将文件导入为数字(但再次收到相同的消息“期待数字,有一个日期)。
那么我该如何解决这个问题呢?我可以通过更改 Excel 中的列类型来做到这一点,但这不是我想要做的(我更喜欢在 R 中做所有事情)。
编辑
根据要求提供一些数据(在我使用 lubridate as_date 函数将数据作为“字符”导入 R 之后,如建议的那样)。
Num Date
1 41277.000601851854
2 41277.004710648151
3 41277.004826388889
4 41277.007372685184
5 41277.007789351854
6 41277.007870370369
7 41277.010335648149
8 41277.010868055557
9 41277.013842592591
10 41277.014548611114
【问题讨论】: