0

月の値が "Jan" や "January" のようなテキスト形式の場合に問題が発生します。たとえば、次の行

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

エラーを返します:

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

ここで何がうまくいかないのですか?

sessionInfo():

R バージョン 2.15.1 (2012-06-22) プラットフォーム: x86_64-pc-mingw32/x64 (64 ビット)

ロケール: [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-6latticeExtra_0.6-24lattice_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 ロケール設定に関連しています (解決策を示した sessionInfo() 出力を求めてくれた Joshua に感謝します)。したがって、時間ロケールを変更すると役立ちます。

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 に答える