【问题标题】:Error when R starts up after using Sys.setlocale()使用 Sys.setlocale() 后 R 启动时出错
【发布时间】:2016-04-20 18:20:15
【问题描述】:

在加载 RStudio 时,我收到以下错误消息,我不明白:

Error: 3:35: unexpected symbol
3:     Sys.setlocale(, "en_US.UTF-8")Sys.setlocale
                                      ^

在 knitr/LyX/R 出现一些编码问题后,我尝试使用找到的以下命令设置语言环境 here,我认为这是导致它的原因。

cat('
Sys.setlocale(, "en_US.UTF-8")
    ', file = '~/.Rprofile', append = TRUE)

我怎样才能将我的 Sys.setlocale 改回可用的东西?我试过Sys.setlocale(category = "LC_ALL", locale = "en_US.UTF-8"),但没有运气。我还在终端中尝试了以下建议heredefaults write org.R-project.R force.LANG en_US.UTF-8

我从 sessionInfo() 得到以下输出

> sessionInfo()
R version 3.2.2 (2015-08-14)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X 10.11.2 (El Capitan)

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

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

loaded via a namespace (and not attached):
[1] tools_3.2.2

【问题讨论】:

  • 首先从Sys.setlocale(, "en_US.UTF-8")Sys.setlocale 中的.Rprofile 中删除第二个Sys.setlocale(, "en_US.UTF-8")。并且不要再次运行cat 命令。
  • 我认为这只是在您的.Rprofile 中对Sys.setlocale 的两次调用之间缺少一个分号(或换行符)。不过,您始终可以手动编辑它。这个错误实际上并没有搞砸你的系统locale变量。
  • @alistaire 无需多次调用Sys.setlocale。 OP 运行了 2 次或更多 cat 命令,而只需要一次。
  • @Pascal 真。我猜我知道cat(... append = TRUE) 没有插入换行符。

标签: r knitr lyx


【解决方案1】:

通过在我的主文件夹中找到 .Rprofile 并删除内容解决了问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-20
    • 2021-10-11
    • 2021-10-20
    • 1970-01-01
    • 1970-01-01
    • 2021-11-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多