[python/pandas] read_csv에서 line contains NULL byte 에러

Error-

  Line contains NULL byte

 

원인-

  말 그대로 파일에 NULL 바이트가 섞여서 판다스에서 read_csv로 변환할 수 없다는 에러이다.

  보통 utf-16 인코딩 파일을 읽어오려할 때 발생한다.

 

해결법-

  가장 간단한 방법은 원본파일의 인코딩을 재설정하는 것이다.

  팁으로 가장 간단하게 메모장으로 열어서 인코딩만 바꿔 재 저장해주는 방법이 있다.

  리눅스에서는 

  $ iconv -c -f utf-16 -t utf-8 file.csv > file2.csv

  명령어를 통하여 인코딩을 바꿔줄 수 있다.

  이 경우 추가적으로 file separation을 제대로 못 잡아주는 경우가 생길 수 있다.

  이 경우엔 명시적으로 sep='\t'옵션을 주면 해결되는 경우가 대부분이다.

+ Recent posts