【问题标题】:During startup - Warning message: Setting LC_CTYPE= failed on Windows启动期间 - 警告消息:在 Windows 上设置 LC_CTYPE= 失败
【发布时间】:2019-06-03 19:10:40
【问题描述】:

每当我启动 Rstudio 升级 Windows 10 后,我都会收到以下警告消息。

During startup - Warning message: Setting LC_CTYPE= failed

我目前正在运行 Microsoft R Open 版本。

有什么方法可以修复此警告消息,我在 stackoverflow 找到了一些适用于 Mac 的解决方案,但不适用于 Windows。

【问题讨论】:

  • Sys.getlocale() 返回什么?
  • Sys.getlocale() 返回"C"
  • 我相信这是未设置时的默认值。我不确定在 Windows 中设置它的最佳方法是什么,但我很确定将 LC_ALL 设置为类似 Unix 的 en_US.UTF-8 是行不通的;您需要弄清楚可用的语言环境。另请注意,Sys.setlocale 只会为 R 会话设置它,因此您需要在操作系统中的某个地方更全局地设置它。
  • 我在 RStudio 社区下交叉发布了这个,如果那里有解决方案,我会在这里更新 -> community.rstudio.com/t/…

标签: r windows rstudio


【解决方案1】:

我发现针对该问题的最佳解决方法是设置一个 .Renviron 文件并覆盖那里的语言环境。

如何设置和修改 .Renviron 文件在公开书籍Efficient R Programming 的相关章节中进行了描述。因此,只需复制行

user_renviron = path.expand(file.path("~", ".Renviron"))
file.edit(user_renviron) # open with another text editor if this fails

然后编辑 .Renviron 文件以更改语言环境。请注意,在操作系统上,某些语言环境将不存在,安装它们可能并非易事。但是,语言环境“C”应该始终存在。对我来说,“English_United States.1252”也在 Windows 上工作,我在 .Renviron 文件中添加了以下几行(包括换行符)

LC_COLLATE  = "English_United States.1252"
LC_CTYPE    = "English_United States.1252"
LC_MONETARY = "English_United States.1252"
LC_NUMERIC  = "English_United States.1252"
LC_TIME     = "English_United States.1252"

【讨论】:

    猜你喜欢
    • 2012-03-30
    • 2021-11-12
    • 1970-01-01
    • 2015-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-08
    • 2021-11-03
    相关资源
    最近更新 更多