Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
Tags
- FlowLayout
- BorderLayout
- FFT
- g검정
- HTML
- java
- 반응형웹
- CSS
- 미디어쿼리
- Codility
- 예제
- html 프로젝트
- css 기초
- Database
- FileWriter
- oracle
- Position
- html 기초
- iframe 태그
- 메서드
- 사전학습
- 푸리에 변환
- 파이썬
- 반응형 웹 프로젝트
- rnn
- 상속
- inline
- ObjectOutputStream
- 퍼셉트론
- GridLayout
Archives
- Today
- Total
도라에몽주머니
[Python / 오류해결] 'utf-8' codec can't decode byte 0xc1 in position 0: invalid start byte 본문
Error
[Python / 오류해결] 'utf-8' codec can't decode byte 0xc1 in position 0: invalid start byte
에몽쓰 2021. 2. 1. 10:18한국부동산원에서 올려준 아파트매매가격지수 파일을 열어보려다 저런 오류가 떴다.
이 에러메세지는 Pandas를 이용해서 read_csv를 했을 때 발견되는 오류 메세지이고 오류의 의미는 utf-8로 0 위치에 있는 값 0xc1을 디코딩 할 수 없다는 의미이다.
그래서 우선
with open('C:\\Users\Downloads\한국부동산원_아파트 매매가격지수(월별)_20201026.csv', 'rb') as f:
buffer = f.read()
print(buffer)
이 코드를 사용해 정말 처음 위치의 byte값이 0xc1인지 확인해보았다.

사진을 보면 알 수 있듯이 첫 바이트가 xc1이다,,,,
그래서 알아봤는데 뭐 인코딩을 UTF-16으로 해봐라 ISO-8859-1로 해봐라 등등 많은 조언이 있었지만 ISO-8859-1로 했을 때 인코딩은 되었지만 한글이 일부 깨져서 나왔음,,,,ㅜㅜ
결국 찾아보다가 발견한 해결방법은 한글 전용 인코딩 방식인 'EUC-KR' 이나 'CP949'를 이용하면 된다.
import pandas as pd
apartment = pd.read_csv('C:\\Users\Downloads\한국부동산원_아파트 매매가격지수(월별)_20201026.csv', encoding = 'EUC-KR')
이런식으로 encoding에 UTF-8 대신 적어주면 된다.