gpt4 book ai didi

r - 将数字日期格式 (YYYYMMDD; 20150101) 转换为年月

转载 作者:行者123 更新时间:2023-12-02 06:57:05 25 4
gpt4 key购买 nike

你们中的任何人都可以帮助转换日期从 20150101缩写形式 Jan-2015 ?

我尝试了以下方法。

x = 20150101
zoo::as.yearmon(x, "%b-%y")

但我收到以下错误

Error in charToDate(x) : character string is not in a standard unambiguous format



任何帮助将不胜感激。

最佳答案

题中的代码有两个问题:

  • 输入格式指定为 "%b-%y"但应该是"%y%m"
  • 我们希望使用 as.yearmon.character在这里而不是as.yearmon.numeric所以输入应该转换为"character"

  • 因此,试试这个:
     library(zoo)
    ym <- as.yearmon(as.character(20150101), "%Y%m")

    给予:
    > ym
    [1] "Jan 2015"

    请注意 "yearmon"对象在内部存储为年份 + 分数,其中分数是 0 代表 1 月,1/12 代表 2 月,...,11/12 代表 12 月。在外部,它们呈现为缩写的月份,后跟一个空格和年份,如图所示。

    以上可能就足够了,但如果不将其转换为格式为 "%b-%y" 的字符串或 "%b-%Y"使用 format :
    format(ym, "%b-%y")
    ## [1] "Jan-15"

    format(ym, "%b-%Y")
    ## [1] "Jan-2015"

    关于r - 将数字日期格式 (YYYYMMDD; 20150101) 转换为年月,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29168292/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com