반응형
Python에서 Pandas를 통해 csv 파일을 읽어오는 read_csv 메서드를 호출할 경우
아래와 같은 에러가 발생하는 경우가 생깁니다.
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb9 in position 0: invalid start byte
번역하자면...
UnicodeDecodeError: 'utf-8' 코덱은 위치 0의 바이트 0xb9를 디코딩할 수 없습니다:
유효하지 않은 시작 바이트
즉, 인코딩 에러로써 인코딩의 값에 한글 전용 인코딩 방식인 'cp949' 를 넣어주면 됩니다.
예제를 보도록 하죠.
문제발생
1
2
3
4
5
|
import pandas as pd # 데이터를 저장하고 처리하는 패키지
# csv 파일을 읽어서 DataFrame 객체로 만듦
df = pd.read_csv('C:/Desktop/Player/task/data/time.csv')
df # df 표시
|
cs |
저는 read_csv메서드를 단순히 파일명을 넣고 호출하려하려 했습니다.
하지만 이미지와 같은 오류가 발생하였죠.
즉, 인코딩이 되지 않아 발생 된 오류입니다.
반응형
해결방안
1
2
3
4
5
|
import pandas as pd # 데이터를 저장하고 처리하는 패키지
# csv 파일을 읽어서 DataFrame 객체로 만듦 / 한글 인코딩을 위해 cp949로 설정
df = pd.read_csv('C:/Desktop/Player/task/data/time.csv', encoding='cp949')
df # df 표시
|
cs |
encoding 속성값에 'cp949' 를 넣어주면 됩니다.
통상적으로 euc-kr를 사용하는 경우가 많은데
euc-kr이나 cp949 모두 한글 인코딩 방식이긴 합니다만
cp949는 euc-kr의 확장버전이기 때문에 cp949를 추천드립니다.
인코딩 값을 넣어주면 파일을 잘 불러오는 것을 볼 수가 있습니다.
반응형
'Error' 카테고리의 다른 글
[Javascript] Ajax 함수 return 값이 'undefined' 경우 해결방법 (1) | 2024.01.04 |
---|---|
[Error] An error occurred while collecting items to be installed (0) | 2023.06.21 |
[Error] more than one row returned by a subquery used as an expression 해결방법 (0) | 2022.10.27 |
[Error] Uncaught SyntaxError: Unexpected token ' ' 해결 방법 (1) | 2022.10.25 |
[Error] getCookie is not defined 해결 방법 (0) | 2022.10.04 |
댓글