0
私はRで一切開くことができなかった未知のエンコーディングのテキストファイルをたくさん持っています。私のファイルに 未知のエンコーディングのタブ区切りテキストファイルをPythonのR互換ファイルエンコーディングに変換する
f = codecs.open(input,"rb","utf-16")
for line in f:
print repr(line)
一行は次のようになります
pythonで印刷された:私は、UTF-16でcodecs
の助けを借りてのpythonでそれらを開くことができることになった
u'06/28/2016\t14:00:00\t0,000\t\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\t00000000\t6,000000\t0,000000\t144,600000\t12,050000
\t8,660000\t-120,100000\t-0,040000\t-0,110000\t1,340000\t5,360000
\t-1,140000\t-1,140000\t24,523000\t269,300000\t271,800000\t0,130000
\t272,000000\t177,000000\t0,765000\t0,539000\t\r\n'
」最初の "u"はこれをユニコードで表していますが、今は本当にそれが何であるか分かりません。私の目標は、テキストファイルをR
で使用できるものに変換することです。適切にcsvファイルをエンコードされたが、私はunicodecsv
を使用して失敗している:
in_txt = unicodecsv.reader(f, delimiter = '\t', encoding = 'utf-8')
out_csv = unicodecsv.writer(open(output), 'wb', encoding = 'utf-8')
out_csv.writerows(in_txt)
誰も私のアプローチにおける主要な間違いが何であるかを教えてもらえますか?
「guess_encoding」が助けてくれてありがとう!完全性のために:それは私がPythonで削除したヌルバイト(\ x00)でいっぱいのutf-16-leファイルでした。これとutf-8への変換の後、すべてRでうまくいった! – lueromat
うれしかった! – Altons