我在Office中使用Windows PC,在家中使用MacBook,在实验室中使用Linux PC(我在每种情况下都有我的理由)。我使用Dropbox在机器之间同步我的代码。偶尔,我有理由在我的代码中使用一个稍微不寻常的符号。例如,使用度数符号(°
)绘制R中的图形。如果我将文件保存在Mac上并在PC上打开,则该角色现在呈现为' °
'。如果我将其更改回PC上的°
符号,当我返回MacBook时,它会呈现为?
&#39;,并且R拒绝运行代码。< / p>
这不是R独有的;我在MATLAB中也注意到了这一点,通常也有类似的字符。这些恰好是我完成大部分工作的两种语言。我理解这可能与文件编码有关,但我不知道如何确保(至少对于R和MATLAB)我保存在兼容的格式。避免使用这些字符显然是一种选择,但并不理想。
这个问题的解决方案是普遍的,还是至少对于R和MATLAB?
答案 0 :(得分:1)
This answer解释了为什么让UTF-8在Windows上与R一起工作很困难(对于Linux上的R,UTF-8是默认的,我认为在Mac上也是如此)。最安全和最简单的路径可能是在脚本中使用unicode转义码(如\u00B0
作为度数符号)。这样,您的代码将始终符合ASCII标准,但在绘图时仍应呈现符号。 this question的答案应该为MATLAB排序(即在MATLAB启动文件中使用feature('DefaultCharacterSet', 'UTF8')
)。