numpy.loadtxt로 데이터를로드하려고합니다 ... 읽으려는 파일이 cp1252 코딩을 사용하고 있습니다. numpy로 인코딩을 cp1252로 변경할 수 있습니까? Numpy loadtxt 인코딩
다음
import numpy as np
n = 10
myfile = '/path/to/myfile'
mydata = np.loadtxt(myfile, skiprows = n)
준다 :
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf6 in position 189: invalid start byte
파일은 플로트의 테이블에 따라 메타 데이터 (제 1 행 N)을 포함한다.
편집 :이 문제는 우분투 (12.04)에서이 문제가 발생하는 경우에만 발생합니다. Windows에서는 잘 작동합니다. 이런 이유로 나는이 문제가 인코딩과 관련이 있다고 생각한다.
Edit2가 : 너무 잘 다음 작품에 나오는 것처럼 파일을 여는 : 내가 직접 NumPy와 배열에 데이터를 읽을 np.loadtext 사용하고 싶습니다 그러나
import codecs
data = codecs.open(myfile, encoding='cp1252')
datalines = data.readlines()
.
cp1252의'ox6f'가'ö'인데, 입력 내용은 어떻게 생겼습니까? –
'numpy 1.8.1'을 사용하고'n'은 정확합니다. 그것은 작동합니다. – emeth