Python 3.6에서 한글파일명이 포함된 CSV 읽을 경우 에러가 날 떄가 있습니다.


1. 샘플 코드

import pandas as pd
pd.read_csv("안녕하세요.txt")

2. 에러 내용

  File "pandas\parser.pyx", line 373, in pandas.parser.TextReader.__cinit__ (pandas\parser.c:4184)
 
  File "pandas\parser.pyx", line 669, in pandas.parser.TextReader._setup_parser_source (pandas\parser.c:8471)
 
OSError: Initializing from file failed

3. 간단한 해결 방법

import pandas as pd
pd.read_csv("안녕하세요.txt", engine='python')

추정 원인은 pandas에서 사용하는 CParserWrapper의 자체 버그이며, 해결방법은 아래 링크(일본어)에서 발견하였습니다

http://own-search-and-study.xyz/2017/04/08/python3-6%E3%81%AEpandas%E3%81%A7%E3%80%8Cinitializing-from-file-failed%E3%80%8D%E3%81%8C%E8%B5%B7%E3%81%8D%E3%81%9F%E5%A0%B4%E5%90%88%E3%81%AE%E5%AF%BE%E7%AD%96/


감사합니다.

Posted by kkckc
,