줄리아에서 CSV 출력 시 깨진 문자 해결법

줄리아에서 CSV 출력 시 깨진 문자 해결법

How to Fix Broken Text of CSV in julia

에러

using DataFrames, CSV

example = DataFrame(x = 1:10, 가 = "나다")
CSV.write("example.csv", example)

20211018_162328.png

줄리아에서 CSV 파일로 출력하다보면 위와 같이 한글이 깨지는 현상을 볼 수가 있다.

원인

사실 한글이 깨지는 게 아니라 유니코드 인코딩의 문제로, 특히 UTF-8 인코딩의 BOMByte Order Mark 때문에 일어난다. 파이썬 등에서는 인코딩을 UTF-8-sig로 주는 식으로 해결할 수 있다.

해결법 1

CSV.write("example.csv", example, bom = true)

CSV.jl에서는 그냥 bom = true를 옵션으로 주면 다음과 같이 글이 깨지지 않고 출력된다.

20211018_162352.png

환경

  • OS: Windows
  • julia: v1.6.3

  1. https://csv.juliadata.org/stable/writing.html#CSV.write ↩︎

댓글