';translateCharUTF8';必须在CHARSXP执行暂停时调用
我按照说明在Red Hat Linux Enterprise 7.3计算机上安装了Microsoft-R-Open 3.4.0。 R启动了,乍一看似乎做得很好。但是,当我尝试使用命令列出目录中的文件时';translateCharUTF8';必须在CHARSXP执行暂停时调用,r,R,我按照说明在Red Hat Linux Enterprise 7.3计算机上安装了Microsoft-R-Open 3.4.0。 R启动了,乍一看似乎做得很好。但是,当我尝试使用命令列出目录中的文件时 files <- list.files(path="/home/username/directory_name/", pattern="*.Rda",, full.names=T, recursive=FALSE) 在我的本地windows计算机上,该命令运行良好。 在谷歌上搜索,除了安装
files <- list.files(path="/home/username/directory_name/", pattern="*.Rda",, full.names=T, recursive=FALSE)
在我的本地windows计算机上,该命令运行良好。
在谷歌上搜索,除了安装可能会被破坏之外,什么都没有出现
奇怪的是,如果我将命令复制并粘贴到R中并执行它,它就不起作用,但是如果我将命令复制并粘贴到R中并以一种不应该改变其结果的方式更改该命令,而只应该添加空格或类似于它可能运行的方式。例如,将其更改为
files <- list.files(path = "/home/username/directory_name/", pattern = "*.Rda",, full.names = T, recursive = FALSE)
当从R-foundation(通过EPEL安装)使用R时,我得到了相同的错误和行为
命令sessionInfo()返回以下内容:
sessionInfo()
R version 3.3.2 (2016-10-31)
Platform: x86_64-redhat-linux-gnu (64-bit)
Running under: Red Hat Enterprise Linux Server 7.3 (Maipo)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
uname-mrs给了我:
Linux 3.10.0-514.el7.x86_64 x86_64
任何帮助都将不胜感激,
致意
Stefan您的文件名包含重音字符。将其更改为纯ASCII名称可以解决此问题。是否有名称包含重音字符的文件?另外,请注意,
pattern
应该是一个正则表达式,而不是一个glob。如果使用pattern=glob2rx(“*.Rda”)
,它能工作吗?我与Hong和hannes101所说的一样。还有几件事;如果将所有文件等从Linux设备复制到Windows设备,并运行相同的命令,结果会是什么?此外,如果内存损坏(除了“怪异”字符),似乎也会发生此错误,但是当您看到MRO和CRAN都发生此错误时,我想知道是否就是这样。最后:如果重新启动Linux系统,然后再试一次,会发生什么?另外,我认为文件中的逗号太多了,非常感谢!我确实有带重音字符的文件。在重命名它们,使它们不再包含重音字符后,它就可以工作了。使用pattern=glob2rx(“*.Rda”)仍然会导致带有重音字符的文件出错。命令中的第二个逗号是我的复制粘贴错误,在我试图执行的代码中没有第二个逗号。
sessionInfo()
R version 3.3.2 (2016-10-31)
Platform: x86_64-redhat-linux-gnu (64-bit)
Running under: Red Hat Enterprise Linux Server 7.3 (Maipo)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
Linux 3.10.0-514.el7.x86_64 x86_64