2017년 12월 4일 월요일

UnicodeDecodeError: 'cp949'


data = np.loadtxt('./data.csv', delimiter=',', unpack=True, dtype='float32')

UnicodeDecodeError: 'cp949' codec can't decode byte 0xbf in position 2: illegal multibyte sequence

파이썬 3에서는 ANSI형식으로 저장된 파일만 읽을 수 있다.
open() 함수를 이용하여 파일을 읽어오는 경우라면 다음과 같이 'utf-8'을 추가하여 해결할 수 있다.

fID = open('./data.csv', 'r', 'utf-8')

하지만 numpy의 loadtxt()를 이용하여 읽는 경우는 encoding 옵션이 없기때문에 파일 자체를 ANSI형식으로 저장해야한다.
메모장에서 해당 파일을 열고 > 다른 이름으로 저장하기 > 인코딩을 ANSI로 선택하여 저장한다.

댓글 없음:

댓글 쓰기

람다 표현식 (Lambda expression)

람다 표현식(Lambda expression)  람다 표현식으로 함수를 정의하고, 이를 변수에 할당하여 변수를 함수처럼 사용한다. (1) 람다 표현식       lambda <매개변수> : 수식      ※ 람다식을 실행하...