2017-12-28 6 views
2

readrを使用してcognos 8で生成されたcsvファイルをrに読み込もうとしています。readrを使用してcognos 8ファイル(utf 16)からRデータフレームを読み取る

例再現性のために、添付ファイル:Example csv file

次のPythonコードは動作します:私はRで、次の試してみた

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

、およびそれらのどれも正しい結果を返します。これらのいずれかのエラー(不完全なマルチバイト文字列)または(ネストされたリストまたは類似のような)不適切読み込ま

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')) 

私はUTF-16LEを取得するためにguess_encoding()を使用し、私はまた、UTF-16を試してみました。

+2

(https://github.com/tidyverse/readr/issues/306)この[readrパッケージの未解決の問題]があります。 – Gregor

+0

そしてそこには良い解決策はありませんが、[重複:UTF-16LEエンコーディングでcsvを読む高速な方法](https://stackoverflow.com/q/36862340/903061) – Gregor

+0

ありがとうございました。私は基本のread.csvファイルを試しましたが、うまく動作しませんでした。開いているgithubの問題に示されているようなRead_delimは今のところうまくいくでしょう。 –

答えて

0

Gregorのコメントに記載されているように、このためのreadrパッケージには未解決の問題があります。

回避策として、基本パッケージread_delimが動作します:

csv_data <- read.delim('csv_test.csv', stringsAsFactors = FALSE, fileEncoding = 'UTF-16LE') 
関連する問題