【问题标题】:read into R data frame from cognos 8 file (utf 16) with readr使用 readr 从 cognos 8 文件(utf 16)读入 R 数据帧
【发布时间】:2018-06-09 02:18:31
【问题描述】:

我正在尝试使用 readr 将 cognos 8 生成的 csv 文件读入 r。

附加的可重复性示例文件:Example csv file

以下python代码有效:

df = pd.read_table('csv_test.csv', encoding = 'utf-16')

我在 R 中尝试了以下方法,但都没有返回正确的结果。它们要么出错(不完整的多字节序列),要么不正确地读入(作为嵌套列表或类似列表)

csv_data <- read_table('csv_test.csv')
csv_data <- read_table('csv_test.csv', locale = locale(encoding = 'UTF-16LE'))
csv_data <- read_tsv('csv_test.csv')
csv_data <- read_tsv('csv_test.csv', locale = locale(encoding = 'UTF-16LE'))

我使用guess_encoding() 来获取 UTF-16LE,我也尝试了 UTF-16。

【问题讨论】:

标签: r csv readr cognos-8 utf-16le


【解决方案1】:

正如 Gregor 在评论中提到的,readr 包存在一个未解决的问题。

作为一种解决方法,基本包 read_delim 将起作用:

csv_data <- read.delim('csv_test.csv', stringsAsFactors = FALSE, fileEncoding = 'UTF-16LE')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-05-14
    • 2013-11-21
    • 2021-07-01
    • 2012-06-24
    • 2018-07-10
    • 1970-01-01
    • 2017-01-20
    • 1970-01-01
    相关资源
    最近更新 更多