如何以 dd/mm/yyyy hh:mm 格式从 CSV 导入日期到 R 中的通用数字字符串

Posted

技术标签:

【中文标题】如何以 dd/mm/yyyy hh:mm 格式从 CSV 导入日期到 R 中的通用数字字符串【英文标题】:How to import date from CSV in dd/mm/yyyy hh:mm format in to general number string in R 【发布时间】:2022-01-12 10:07:09 【问题描述】:

希望你能帮助我有大量的 CSV 文件,我需要导入到 R 操作并导出到 excel,除了日期格式之外,所有其他数据都可以正常导入和操作,提供 CSV(并且不能更改)所有带有 dd/mm/yyyy hh:mm 的日期,我需要一种方法将其剥离为 dd/mm/yyyy,(dd/mm/yy) 到目前为止我尝试过的所有方法都将日期更改为 mm/dd/ yyyy 给我多个错误。

我发现的唯一解决方法是在导入之前将 CSV 中的数据转换为通用格式,但是“实时”CSV 太大而无法打开和转换。

任何帮助都会很棒

【问题讨论】:

【参考方案1】:

一种可能的解决方案是在导入后使用lubridate 解析日期/时间列的文本字符串。您可以从中提取日期和时间(使用date()hms::as_hms()):

library(readr)
library(dplyr)
library(lubridate)


read_csv("Date_time\n
         01/09/2021 19:30\n
         19/12/2020 12:45\n
         16/03/2019 00:15") %>% 
  mutate(Date_time = dmy_hm(Date_time),
         Date = date(Date_time),
         Time = hms::as_hms(Date_time))

#> # A tibble: 3 x 3
#>   Date_time           Date       Time  
#>   <dttm>              <date>     <time>
#> 1 2021-09-01 19:30:00 2021-09-01 19:30 
#> 2 2020-12-19 12:45:00 2020-12-19 12:45 
#> 3 2019-03-16 00:15:00 2019-03-16 00:15

这至少为您提供了导入到 R 中的整洁和可操作的数据,能够格式化以供打印。这是否达到您的解决方案?如果它对您的数据不起作用,那么可能会发布一个小样本(或代表性样本)作为示例以尝试开始工作。

由reprex package 创建于 2021-12-07 (v2.0.1)

【讨论】:

感谢安德鲁正是我所需要的

以上是关于如何以 dd/mm/yyyy hh:mm 格式从 CSV 导入日期到 R 中的通用数字字符串的主要内容,如果未能解决你的问题,请参考以下文章

如何在Java中将日期对象转换为“dd/MM/yyyy HH:mm:ss”格式[重复]

时间戳格式 dd/mm/yyyy hh:mm:ss 到 yyyy-mm-dd hh:mm:ss - MySQL [重复]

SQL Server 格式日期 DD.MM.YYYY HH:MM:SS

如何发送日期时间参数为DD / MM / YYYY HH:MM:SS格式?

在 SSIS 中将日期 DD.MM.YYYY hh:mm:ss 转换为 YYYY-MM-DD

在 Hive 中将 dd/mm/yyyy/hh/mm/ss 格式更改为 yyyymm