无法在 RStudio 中获取带有稀有字符的脚本
Can't source skript with rare characters in RStudio
按照提供的解决方案here,我正在尝试实现一个替换重音字符的脚本。从控制台执行我的代码工作正常,但是当我执行此代码时:
x <- list('ÿ'='y')
来自 RStudio 脚本 R returns 以下错误:
source('~/R/DrivingDataAnalysis/R/WebScraper/VoltstatsScraper.R', encoding = 'UTF-8')
Error in source("~/TestScript.R", :
~/TestScript.R:1:6: unexpected INCOMPLETE_STRING
1: list('
^
对于 link 中的其他重音字符,R 解析脚本。我怎样才能在脚本中完成这项工作?我在 Windows 7.
上使用 R 3.3.1 和 RStudio 0.99.896
将我的评论转换为答案,因为我认为它会解决您的问题:
- 确保您的脚本在
UTF-8
中编码。 Everything else is madness.1
而不是使用 source
,这根本不起作用,请使用
eval(parse('your/file.r', encoding = 'UTF-8'))
This works as a substitute for source
. 正如链接的答案所解释的那样,原因是 source
尝试(但失败)转换 UTF-8 编码的字符,而 parse
不执行任何转变;相反,它从文件中逐字加载字符串并将其简单地标记为 UTF-8 编码。
不幸的是,假设 RStudio 的“来源”按钮在内部使用 source
而不是上述解决方法,则您必须手动执行此操作。
1 其他 Unicode 转换可能有意义,但据我所知,R 根本不支持这些转换。
按照提供的解决方案here,我正在尝试实现一个替换重音字符的脚本。从控制台执行我的代码工作正常,但是当我执行此代码时:
x <- list('ÿ'='y')
来自 RStudio 脚本 R returns 以下错误:
source('~/R/DrivingDataAnalysis/R/WebScraper/VoltstatsScraper.R', encoding = 'UTF-8') Error in source("~/TestScript.R", : ~/TestScript.R:1:6: unexpected INCOMPLETE_STRING 1: list(' ^
对于 link 中的其他重音字符,R 解析脚本。我怎样才能在脚本中完成这项工作?我在 Windows 7.
上使用 R 3.3.1 和 RStudio 0.99.896将我的评论转换为答案,因为我认为它会解决您的问题:
- 确保您的脚本在
UTF-8
中编码。 Everything else is madness.1 而不是使用
source
,这根本不起作用,请使用eval(parse('your/file.r', encoding = 'UTF-8'))
This works as a substitute for
source
. 正如链接的答案所解释的那样,原因是source
尝试(但失败)转换 UTF-8 编码的字符,而parse
不执行任何转变;相反,它从文件中逐字加载字符串并将其简单地标记为 UTF-8 编码。
不幸的是,假设 RStudio 的“来源”按钮在内部使用 source
而不是上述解决方法,则您必须手动执行此操作。
1 其他 Unicode 转换可能有意义,但据我所知,R 根本不支持这些转换。