我正在运行我的同事前段时间在他的 Rstudio 上编写的代码,但我被困在一个看起来很愚蠢的问题上。我在数据框中有一个变量,它是一个字符并代表一个日期,例如
30jan2016
38feb2016
Run Code Online (Sandbox Code Playgroud)
我需要将此字符串转换为日期变量,我正在使用以下内容:
df$newvar <- format(as.Date(df$oldvar, format="%d%b%Y"), format="%Y%m%d")
Run Code Online (Sandbox Code Playgroud)
这就是我得到的:
NA
2016-02-28
Run Code Online (Sandbox Code Playgroud)
一段时间后,我意识到我的 Rstudio 正在读取意大利语字符串的“月份”部分(在下面你可以找到月份缩写 ENG-ITA 的比较),并且正确地只解码它可以用意大利语读取的内容。更改全局语言选项没有帮助(无论如何,R 语言已经设置为英语)。有任何想法吗?
谢谢!
ENG ITA
jan gen
feb feb
mar mar
apr apr
may mag
jun giu
jul lug
aug ago
sep set
oct ott
nov nov
dec dic
Run Code Online (Sandbox Code Playgroud)
注意:当然,我可以替换字符串的一部分,然后运行这段代码,但我需要这段代码在任何计算机上运行,都是英文的。