2012-06-26 13 views
7

Vor ein paar Tagen begann ich auf einem deutschen R-Script zu schreiben. Leider ist der folgende Code Chunk nicht, wenn ich das Dokument knit():knitr und UTF8 encoding

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

Kann mir jemand helfen, dieses Problem zu lösen?

PS: Ich arbeite mit Linux.

Antwort

6

Da Sie Linux verwenden, sollten die Dinge einfach sein. Es ist wahrscheinlich nur ein LaTeX-Problem; Am wichtigsten, haben Sie die Kodierung Ihres Dokuments spezifiziert? z.B. \usepackage[utf8]{inputenc}. Das funktioniert bei mir unter Ubuntu.

\documentclass[ngerman]{article} 
\usepackage[utf8]{inputenc} 
\begin{document} 

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

\end{document} 

BTW, vielleicht ist es keine gute Idee, nicht-ASCII-Zeichen in R Objektnamen zu verwenden, obwohl sie auch funktionieren.

+0

Ja, ich habe die Codierung angegeben, funktioniert aber trotzdem nicht. Es heißt: "R-Code kann nicht analysiert werden ..." Nicht-ASCII-Zeichen in Objektnamen: Ich habe es nur als Beispiel verwendet. Häufiger handelt es sich um Spaltennamen in Datenrahmen, die beispielsweise ein "ä" oder "ö" enthalten. – beginneR

+0

Ich sehe. Dies scheint ein Problem des 'Parser'-Pakets (oder meines Fehlers) zu sein. Sie können versuchen, 'update.packages()' und 'remove.packages (c ('parser', 'highlight'))' '. Seit v0.6.3 ist 'knitr' nicht mehr abhängig von' parser' oder 'highlight' (https://github.com/yihui/knitr/blob/master/NEWS#L48). –

+1

Danke. Ich habe knitr auf 0.6.3 aktualisiert und jetzt ist alles in Ordnung. – beginneR