gpt4 book ai didi

r strptime (R 版本 3.2.2 )

转载 作者:行者123 更新时间:2023-12-03 14:50:50 26 4
gpt4 key购买 nike

在 R 版本 3.0.2 中对带有“AM 或 PM”的文本字符串使用 strptime 工作正常

> strptime("8/25/2015 6:38:41 PM", "%m/%d/%Y %I:%M:%S %p")
[1] "2015-08-25 18:38:41"

我最近升级到 R 3.2.2,现在发现这个推荐返回 NA:
>strptime("8/25/2015 6:38:41 PM", "%m/%d/%Y %I:%M:%S %p")
[1] NA

这似乎与“PM”有关。如果我删除“PM”并按如下方式使用命令,它会起作用(但当然它会解释为 AM 而不是 PM):
>strptime("8/25/2015 6:38:41", "%m/%d/%Y %H:%M:%S")
[1] "2015-08-25 06:38:41 NZST"

我在这里缺少什么?

更新:

感谢大家的评论:

我重新安装了 R 3.2.2 但得到了同样的错误
>  strptime("8/25/2015 6:38:41 PM", "%m/%d/%Y %I:%M:%S %p")
[1] NA

这是请求的 session 信息
>  sessionInfo()
R version 3.2.2 (2015-08-14)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

locale:
[1] LC_COLLATE=English_New Zealand.1252 LC_CTYPE=English_New Zealand.1252
[3] LC_MONETARY=English_New Zealand.1252 LC_NUMERIC=C
[5] LC_TIME=English_New Zealand.1252

attached base packages:
[1] stats graphics grDevices utils datasets methods base

然后我按照相关帖子中的建议更改了语言环境
> Sys.setlocale(category="LC_TIME","C")
[1] "C"
> strptime("8/25/2015 6:38:41 PM", "%m/%d/%Y %I:%M:%S %p")
[1] "2015-08-25 18:38:41 NZST"

它有效 - 但这是否意味着每次我想将文本时间转换为 POSIXct 类时都必须更改语言环境?

最佳答案

尝试从 hadleyverse 润滑

library(lubridate)
arrive <- ymd_hms("2011-06-04 12:00:00", tz = "Pacific/Auckland")
arrive
## [1] "2011-06-04 12:00:00 NZST"

https://cran.r-project.org/web/packages/lubridate/vignettes/lubridate.html

关于r strptime (R 版本 3.2.2 ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32238171/

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