我试图使用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。
正如Gregor的评论中所提到的,readr包有一个未解决的问题。
作为一种解决方法,基础包read_delim将起作用:
csv_data <- read.delim('csv_test.csv', stringsAsFactors = FALSE, fileEncoding = 'UTF-16LE')