0

当月份的值采用“Jan”或“January”等文本形式时,就会出现问题。例如,以下行

as.yearmon("Jan-2000", "%b-%Y")

返回错误:

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

这里出了什么问题?

会话信息():

R 版本 2.15.1 (2012-06-22) 平台:x86_64-pc-mingw32/x64 (64-bit)

语言环境:[1] LC_COLLATE=Russian_Russia.1251 LC_CTYPE=Russian_Russia.1251 LC_MONETARY=Russian_Russia.1251 [4] LC_NUMERIC=C LC_TIME=Russian_Russia.1251

附加的基础包:[1] grid stats graphics grDevices utils datasets methods base

其他附加软件包:[1] RODBC_1.3-6 latticeExtra_0.6-24 lattice_0.20-10 gplots_2.11.0 MASS_7.3-22
[6] KernSmooth_2.23-8 caTools_1.13 bitops_1.0-4.1 gdata_2.12.0 gtools_2 .7.0
[11] RColorBrewer_1.0-5 xts_0.8-6 zoo_1.7-8

通过命名空间加载(未附加):[1] tools_2.15.1

4

1 回答 1

2

问题可能与 LC_TIME 语言环境设置有关(感谢 Joshua 询问 sessionInfo() 输出以提供解决方案)。因此,更改时间区域设置会有所帮助。

loc <- Sys.getlocale("LC_TIME") #save current locale for future restore
Sys.setlocale("LC_TIME", "C")
as.yearmon("Jan-2000", "%b-%Y")

结果是

[1] “2000 年 1 月”

于 2012-10-30T15:02:17.200 回答