【问题标题】:How do I convert a string into date and day in R如何在 R 中将字符串转换为日期和日期
【发布时间】:2012-05-29 00:52:48
【问题描述】:

我有一个包含 10 列的数据集,其中一列是以下格式的日期

10-MAR-12 00.00.00.000000000

我想将其转换为数据格式,读取为日期而不是以下格式的字符串

10/03/12

我还希望有一个额外的栏目说明现在是星期几

然后我想过滤掉某些日期或日期并创建我的数据子集。

我是 R 的初学者,因此感谢任何帮助

【问题讨论】:

    标签: r date filter


    【解决方案1】:

    查看?strptime 以获取格式化选项,查看as.Dateas.POSIXct 以获取要转换的函数。此外,如果您的问题被否决或关闭,请不要感到惊讶,因为这是一个常见问题,可以在 SO 或快速谷歌搜索中找到答案。

    具体来说:

    format(as.Date(tolower('10-MAR-12 00.00.00.000000000'), format='%d-%b-%y'), format='%d/%m/%y')
    

    应该给你你正在寻找的格式。如果你想要一个日期类型,你应该去掉外部的format

    【讨论】:

    • 谢谢我尝试使用 strptime,但是我更坚持将其添加回我的数据集中并添加额外的列。请记住,我是 R 的完整初学者(昨天开始使用它)
    • 那里有很多excellent resources。我将从那里开始并通过一些示例进行工作。假设您的数据是一个名为datdata.frame(请与str 核对),您可以添加如下列:dat$newcol <- 'foo'。但是谷歌介绍了 R 并阅读了一堆。你会为自己节省数小时的头痛!
    • 我尝试了以下方法,它以与以前相同的格式打印了大量日期,但仍然有很多 0! :( format(depdateold,as.Date(tolower('10-MAR-12 00.00.00.000000000'),format='%d-%b-%y'), format='%d/%m/%y' )
    • 你的日期向量叫做depdateold?把它放在我写的长日期的地方。 depdatenew <- as.Date(tolower(depdateold), format='%d-%b-%y')。然后检查str(depdatenew) 以查看新矢量的格式。
    • 过滤器?你必须更具体。你可能应该问另一个单独的问题。但我建议阅读并可能从一个更简单的问题开始解决。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-08
    • 2021-03-14
    • 1970-01-01
    • 2023-03-26
    • 2011-11-28
    相关资源
    最近更新 更多