14

Excel テーブルをテキスト (*.txt) として保存しました。残念ながら、Excel ではエンコーディングを選択できません。そのため、メモ帳 (ANSI として開く) で開き、UTF-8 として保存する必要があります。次に、Rで読むと:

data <- read.csv("my_file.txt",header=TRUE,sep="\t",encoding="UTF-8")

「XUFEFF.」で始まる最初の列の名前が表示されます。これらは、ファイルがUTF-8形式であることをプログラムに伝えるために予約されているバイトであることを知っています。したがって、テキストとして表示されるべきではありません。これはバグですか?または、いくつかのオプションがありませんか?前もって感謝します!

4

4 に答える 4

16

そのため、ファイルを手動で開き、BOM を確認して破棄する方法について説明するつもりでしたが、次のことに気付きました ( で?file)。

R 3.0.0 以降では、エンコーディング "UTF-8-BOM" が受け入れられ、存在する場合はバイト オーダー マークが削除されます (Microsoft アプリケーションによって生成されたファイルや Web ページの場合が多い)。

つまり、十分に新しい R インタープリターがある場合、

read.csv("my_file.txt", fileEncoding="UTF-8-BOM", ...other args...)

あなたがしたいことをするべきです。

于 2013-11-12T18:58:30.573 に答える
0

コメントからの可能な解決策:

read.csv 引数で試してみてくださいcheck.names=FALSE$これを使用する場合、名前を引用符で囲まない限り、表記法で列を直接参照できないことに注意してください。例: yourdf$"first col".

于 2013-11-12T18:46:58.510 に答える