如何将数据框中所有日期的格式从 dd-mm-yyyy 更改为 yyyy-mm-dd在 r 中

问题描述

所以我有一个看起来像这样的数据框,

         Date        Age_group
1     01-06-2021        <17
2     01-06-2021       17-59
3     01-06-2021        >60 
4     02-06-2021        <17
5     02-06-2021       17-59
6     02-06-2021        >60
7     03-06-2021        <17
8     03-06-2021       17-59
9     03-06-2021        >60

而且还有很长的路要走。我需要将每个日期转换为 yyyy-mm-dd。我试过了

as.Date("01/06/2021",format="%d/%m/%Y")

但很明显,这只是将它们全部更改为上述格式的确切日期。和我一起,我对 r 很陌生,任何帮助将不胜感激

解决方法

您可能正在寻找format

my_date <- as.Date("31-12-2020",format = "%d-%m-%Y")

format(my_date,"%Y-%m-%d")
# [1] "2020-12-31"
,

分两步完成。首先,使用 as.Date 将您的文本日期转换为真正的 R 日期。然后使用 format 以您想要的格式转换回文本。

dates <- as.Date(df$Date,format="%d-%m-%Y")
df$Date <- format(dates,"%Y-%m-%d")
,

你可以这样做:

df$Date <- as.Date(Date,format = "%d-%m-%Y")

其中“df”是数据框的名称。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...