R markdown 不会在 Mac 上编织为 html

问题描述 投票:0回答:1

我正在尝试在 Mac 和 Windows 上将 Rmarkdown 编织为 html。在此文件中,有大量文本数据正在使用 R 包 gt 处理为文本列。在Windows中,代码运行良好,没有任何问题。

当我尝试在 Mac 上运行相同的代码时,出现此错误:

Error in gsub("'", "'", html_tbl) : input string 1 is invalid

我知道问题是什么:文本字符串中有一个撇号,在原始数据中看起来像黑色菱形中的问号:

"...think a lot of us didn�t quite understand wh..."

我不明白的是,为什么代码在ios上失败而不是在windows上失败;我该怎么做才能解决这个问题并防止这个问题继续发展,如果可能的话我该如何解决这个问题,以便传递到 html 输出的句子保持其原始含义和组成。

编辑:这就是文件的读取方式:

df_import <- read_csv("file_path")
html r markdown ascii knitr
1个回答
0
投票

这似乎是编码问题。所以你可以尝试用编码来读取csv。你应该做的是:

  • 首先使用 uchardet 库 `uchardet::detect_file_enc()``
  • 检测编码
  • 第二次读取带有编码的文件,例如使用以下之一:

readr::read_csv2("csv_file.csv", locale = locale(encoding = "WINDOWS-1252"))

readr::read_csv2("csv_file.csv", locale = locale(encoding = "latin1"))

readr::read_csv2("csv_file.csv", locale = locale(encoding = "UTF-8"))

© www.soinside.com 2019 - 2024. All rights reserved.