1

我正在使用sjR Markdown 中的包。但是,我遇到了编码问题。

我的问题: 如果您运行以下几行,您将获得一个存在编码问题的交叉表和第二个交叉表,从而解决了这个问题。

library(sjPlot)
library(sjmisc)
library(sjlabelled)

Var1 <- factor(sample(1:6, 200, replace = T))
Var1 <- factor(Var1,
           levels = c("1","2","3","4","5", "6"),
           labels = c("Zu Hause", 
                      "Am Im Büro", 
                      "In der Schule bzw. an der Universität",
                      "An einem öffentlichen Ort",
                      "Unterwegs",
                      "Außer Haus"))
sjt.xtab(Var1, Var1)
sjt.xtab(Var1, Var1, encoding = "UTF-8")

图1:没有encoding=UTF8 在此处输入图像描述

图 2:带encoding=UTF8 [ 在此处输入图像描述][

但是,如果您尝试在 Rmd 文件中运行它,则解决方案encoding = "UTF-8"不再适用。

```{r echo = FALSE}
library(sjPlot)
library(sjmisc)
library(sjlabelled)

Var1 <- factor(sample(1:6, 200, replace = T))
Var1 <- factor(Var1,
           levels = c("1","2","3","4","5", "6"),
           labels = c("Zu Hause", 
                      "Am Im Büro", 
                      "In der Schule bzw. an der Universität",
                      "An einem öffentlichen Ort",
                      "Unterwegs",
                      "Außer Haus"))
sjt.xtab(Var1, Var1)
sjt.xtab(Var1, Var1, encoding = "UTF-8")
```

输出看起来像 Pic1,但应该看起来像 Pic2

或者

      `r sjt.xtab(Var1, Var1, 
       title = "<br/><h1> Ort /h1> <br/>Beschreibung: Bla Bla.",
       wrap.labels = 5555,
       encoding = "UTF-8",
       no.output=TRUE)$knitr`

输出看起来像 Pic1,但应该看起来像 Pic2

Armarkdown::render("File_in.Rmd", output_file = "File_out.html", encoding = "UTF-8")也无济于事。

我认为,当第二个变量的标签(给出行)sjt.xtab()得到变音符号(ä,ü,ö,ß)时,问题总是会出现。

很高兴听到您的解决方案!
朱利安

4

0 回答 0