【问题标题】:How Can I Create a New Column 'Month' From a YYYY-MM-DD HH:MM:SS Format Using Lubridate?如何使用 Lubridate 从 YYYY-MM-DD HH:MM:SS 格式创建新列“月份”?
【发布时间】:2021-01-30 22:45:14
【问题描述】:

我正在尝试使用 lubridate 从以下格式创建一个仅包含月份的新列:

2020-01-01 00:00:00 yyyy-mm-dd hh:mm:ss

提前谢谢你。

我的表格标题为“weather4”,到目前为止,我有以下内容:

> weather4 %>% 
+     mutate(Year = year(weather4$valid),
+            Month = month(weather4$valid),
+            Day = day(weather4$valid))

生成的输出图像

原始数据

【问题讨论】:

    标签: r date lubridate dplyr


    【解决方案1】:

    weather4$valid 在您的样本中充满了 NA。它有任何有效数据吗?

    我怀疑你需要 year(weather4$valid) 你正在向它输送 weather4 所以你通常只需要 year(valid)...

    假设 valid 中有一个日期?

    现在如果是...它还认为它是由表格判断的字符,因此您需要将其更改为“日期”或日期时间。

    所以我建议:

    year(as.Posixtct(valid, format = "%Y-%m-%d %H:%M:%S"))
    

    您可能想这样做一次并通过管道传输结果...

    【讨论】:

    • 嗨!谢谢您的回答。我添加了带有数据的 tibble 的新屏幕截图。您将在那里看到日期和时间格式。在我运行我发布的代码后,我的控制台中出现了“生成的输出图像”。
    • 那么:weather4 %>% year(as.Posixtct(valid, format = "%Y-%m-%d %H:%M:%S")) 产生了什么?跨度>
    • 什么是有效类,即告诉我们类的输出(weather4$valid)
    猜你喜欢
    • 2020-03-07
    • 2015-11-03
    • 2013-03-21
    • 2017-07-09
    • 2020-08-29
    • 1970-01-01
    • 2013-11-01
    • 2017-08-21
    • 2019-09-24
    相关资源
    最近更新 更多