【问题标题】:knitr and UTF8 encodingknitr 和 UTF8 编码
【发布时间】:2012-06-26 20:57:03
【问题描述】:

几天前,我开始编写德语 R-Script。不幸的是,当我knit()文档时,以下代码块不起作用:

@    
<<>>=
äö <- ordered(c(1,3,2,2))
@

谁能帮我解决这个问题?

PS:我正在使用 Linux。

【问题讨论】:

    标签: r latex knitr


    【解决方案1】:

    由于您使用的是 Linux,所以事情应该很容易。这可能只是一个 LaTeX 问题;最重要的是,您是否指定了文档的编码?例如\usepackage[utf8]{inputenc}。这适用于我在 Ubuntu 下。

    \documentclass[ngerman]{article}
    \usepackage[utf8]{inputenc}
    \begin{document}
    
    <<>>=
    äö <- ordered(c(1,3,2,2))
    @
    
    \end{document}
    

    顺便说一句,在 R 对象名称中使用非 ASCII 字符可能不是一个好主意,尽管它们也可以工作。

    【讨论】:

    • 是的,我指定了编码,但它仍然不起作用。它说:“无法解析 R 代码……”关于对象名称中的非 ASCII 字符:我只是以它为例。更常见的是,它涉及例如包含“ä”或“ö”的数据框中的列名。
    • 我明白了。这似乎是parser 包(或我的错误)的问题。您可以尝试update.packages()remove.packages(c('parser', 'highlight'))。从 v0.6.3 开始,knitr 不再需要依赖 parserhighlight (github.com/yihui/knitr/blob/master/NEWS#L48)。
    • 谢谢。我将 knitr 更新到 0.6.3,现在一切正常。
    猜你喜欢
    • 2015-03-07
    • 1970-01-01
    • 1970-01-01
    • 2012-06-19
    • 1970-01-01
    • 1970-01-01
    • 2013-02-27
    • 2014-03-05
    相关资源
    最近更新 更多