gpt4 book ai didi

r - 日期导入,不正确的世纪

转载 作者:行者123 更新时间:2023-12-04 00:45:13 24 4
gpt4 key购买 nike

我有一堆正在解析的日期,格式为“%m/%d/%y”。 as.Date(dates, format = "%m/%d/%y") 将日期“1/01/64”转换为“2064-01-01”,但我需要它是“1964-01-01”。我想我可以找到 future 年份然后减去一个世纪的实例,但这似乎有点荒谬。

最佳答案

日期在内部存储为整数天,因此在输入或输出时只有这样的格式。至于没有世纪信息的输入,我认为你运气不好。以下是 ?strptime 对 %y 格式规范的说明:“在输入时,值 00 到 68 以 20 为前缀,69 到 99 以 19 为前缀——这是 2004 和 2008 POSIX 标准指定的行为,但他们也说 '预计在未来的版本中,从两位数年份推断出的默认世纪将发生变化。”

  as.Date( "01/01/64", "%m/%d/%y", origin="1970-01-01") -100*365.25
#[1] "1964-01-01"

鉴于 Y2K 已经过去不久,可能会针对允许删除世纪信息的程序员展开一场酒吧大战。

由于默认假设 00-68 年是 2000-2068,因此当然可以创建一个 as.Dateshift

关于r - 日期导入,不正确的世纪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11769022/

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