Scopus_ReadCSV {CITAN} 无法处理从 Scopus 导出的 csv 文件

Scopus_ReadCSV {CITAN} not working with csv file exported from Scopus

我在 Windows 7 上使用 Rstudio 和 R 3.3.1,我已经安装了 CITAN 包。我正在尝试从我从 Scopus 导出的 CSV 文件中导入书目条目(原样,未修改),选择导出所有可用信息。

这是我得到的错误:

example <- Scopus_ReadCSV("scopus.csv")

Error in Scopus_ReadCSV("scopus.csv") : Column not found: `Source'. In addition: Warning messages:

1: In read.table(file = file, header = header, sep = sep, quote = quote, : invalid input found on input connection 'scopus.csv'

2: In read.table(file = file, header = header, sep = sep, quote = quote, : incomplete final line found by readTableHeader on 'scopus.csv'

当我打开文件时,“源”列就在那里,所以我不知道为什么它说 'not found'。

最后我得出以下结论:

  1. 从 Scopus 导出的 CSV 文件的编码是 UTF-8-BOM,在使用 Scopus_readCSV("file.csv") 时似乎无法从 R 中识别出来或 read.table("file.csv", header = TRUE, sep = ",", fileEncoding = "UTF-8").

  2. 尽管它使用了来自 Scopus 的文件的编码类型,但可以找到一些 "strange" 非英语字符,这些字符无法通过 R 中的读取功能读取。(主要是在具有特殊字符的名称中发现了这个问题)

这些问题的解决方案:

  1. 使用 Notepad++ 等记事本应用程序打开 CSV 文件,并使用 UTF-8 编码保存文件,以便 R 以 UTF-8 格式读取该文件。

  2. 当 运行 R 中的读取函数时,您会注意到它停止读取(例如,在 200 个注册表中的第 40 个中)。看看它到底停在哪里,这样你就可以找到特殊字符,通过用记事本打开 CSV,然后你可以 erase/change 它如你所愿,以避免在 R 中再次出现同样的问题。

另一个对我有用的解决方案:

在 Google 表格中打开文件,然后再次从那里下载 *.csv 文件。 R 之后正确打开它。