我有一个带有法语日期的字符向量.我想将它们转换为R中的日期格式.它似乎有效,但有一些神秘的错误.例如,R承认"30 juin 2012"而不是"30 juillet 2012":
> as.Date("30 juin 2012", format = "%d %B %Y")
[1] "2012-06-30"
> as.Date("28 février 2012", format = "%d %B %Y")
[1] "2012-02-28"
> as.Date("30 juillet 2012", format = "%d %B %Y")
[1] NA
你有什么解释吗?
PS:我的本地设置是法语UTF8
> Sys.getlocale()
[1] "fr_FR.UTF-8/fr_FR.UTF-8/fr_FR.UTF-8/C/fr_FR.UTF-8/fr_FR.UTF-8"
小智 7
我真的没有解释,但我确实有一个解决方案.使用","而不是"."与德语数字有类似的问题.对于小数和一些不同的写日期方式也是如此.以下是我通常对数据格式不正确的操作:
a<-"30 juillet 2012"
b<-gsub(pattern="juillet", a, replacement="july")
as.Date(b, format="%d %B %Y")
[1] "2012-07-30"
希望这可以帮助你.如果"7月"在您的系统上不起作用,您可以随时将其替换为7.就像这样
a<-"30 juillet 2012"
b<-gsub(pattern="juillet", a, replacement="/ 7 /")
b<-gsub(pattern="|| ", b, replacement="")
as.Date(b, format= "%d/%m/%Y")
问候,本
正如GSee所说,这是一个地方问题.使用您的语言环境设置为法语Sys.setlocale,您的代码示例运行正常.
在Linux下(我认为OS X也是,但没有经过测试):
Sys.setlocale(locale="fr_FR")
在Windows下:
Sys.setlocale(locale="French_France")
将UTF-8在GSEE的评论是字符编码,并且是可选的.有关详情?iconvlist,请参阅.
| 归档时间: | 
 | 
| 查看次数: | 524 次 | 
| 最近记录: |