티스토리 뷰
[polars] write_csv로 UTF-8-SIG 처럼 저장하기(include_bom)
송채채 2023. 11. 21. 11:19pandas와 다르게, index가 포함되지 않고 저장됨
# 기본 코드
df.write_csv("파일명.csv")
판다스는 인코딩을 특정해서 저장할 수 있지만, polars는 현재(2023-11-21) 지원하지 않음
대신, 계속 업데이트 중이라서 최근 `include_bom` 변수로 윈도우의 인코딩을 지원할 수 있게 되었음 (polars 0.19.15 버전 기준)
https://github.com/pola-rs/polars/pull/12253
df.write_csv("파일명.csv", include_bom=True)
이외의 파라미터는 공식홈페이지를 참고
아래는 단순 번역한 내용임 (최신 라이브러리라서, 계속 변경될 가능성이 높음)
parameter:
- file (파일): 결과가 기록될 파일 경로 또는 쓰기 가능한 파일과 유사한 객체. 기본값은 None으로 설정되어 있으면 출력이 문자열로 반환됩니다.
- include_bom (BOM 포함): UTF-8 BOM을 CSV 출력에 포함할지 여부.
- include_header (헤더 포함): CSV 출력에 헤더를 포함할지 여부.
- separator (구분자): CSV 필드를 구분하는 기호.
- line_terminator (행 종료자): 각 행을 끝내는 데 사용되는 문자열.
- quote_char (인용 부호): 인용 부호로 사용될 바이트.
- batch_size (배치 크기): 각 스레드에서 처리될 행의 수.
- datetime_format (날짜 및 시간 형식): chrono Rust 크레이트에서 정의한 지정자를 사용한 형식 문자열. 형식이 지정되지 않으면 기본적으로 Datetime 열의 최대 시간 단위에서 유추된 기본 소수초 정밀도를 사용합니다.
- date_format (날짜 형식): chrono Rust 크레이트에서 정의한 지정자를 사용한 형식 문자열.
- time_format (시간 형식): chrono Rust 크레이트에서 정의한 지정자를 사용한 형식 문자열.
- float_precision (소수 정밀도): 작성할 십진수 자릿수의 수로, Float32 및 Float64 데이터 유형에 적용됩니다.
- null_value (널 값): 널 값을 나타내는 문자열로 기본값은 빈 문자열입니다.
- quote_style (인용 스타일): {'necessary', 'always', 'non_numeric', 'never'} 중 하나로 지정되며 사용되는 인용 전략을 결정합니다.
- necessary (기본값): 필요할 때만 필드 주위에 인용 부호를 넣습니다. 필드에 인용 부호, 구분 기호 또는 레코드 종료자가 포함된 경우 필요합니다. 레코드에 하나의 빈 필드가 있는 경우 레코드가 빈 경우와 구별할 수 없으므로 인용 부호가 필요합니다. 이것이 기본값입니다.
- always: 모든 필드 주위에 인용 부호를 넣습니다.
- never: 필드 주위에 인용 부호를 사용하지 않습니다. 문자열에 구분 기호를 포함하면 잘못된 CSV 데이터가 생성되는 경우도 있습니다.
- non_numeric: 모든 비숫자 필드 주위에 인용 부호를 넣습니다. 즉, 유효한 부동 소수점이나 정수로 구문 분석되지 않는 필드를 작성할 때 인용 부호가 사용됩니다.
'파이썬(Python)&판다스(Pandas)&Polars' 카테고리의 다른 글
[polars] 셀 안의 문자열 또는 리스트 값 모두 보이게 출력(polars.Config.set_fmt_str_lengths, max_colwidth) (0) | 2023.11.21 |
---|---|
[polars] 데이터프레임의 특정 컬럼 또는 모든 컬럼의 데이터 타입 변경하기(cast) (0) | 2023.11.21 |
[polars] with_columns(), map_elements(=apply) 컬럼 전처리 후 새로운 컬럼 만들기 (0) | 2023.11.17 |
[polars] read_csv, 특정 문자열을 None 처리, dtypes 설정 (0) | 2023.11.17 |
[Python] 여러 딕셔너리(dictionary)를 하나의 딕셔너리로 합치기 (0) | 2023.05.03 |
- Total
- Today
- Yesterday
- 지식그래프
- python
- knowledgegraph
- hadoop
- MongoDB
- pandas
- Postgis
- Claude
- ChatGPT
- SPARQL
- 지식그래프임베딩
- vscode
- Vue3
- knowlegegraph
- LLM
- PEFT
- difflib
- polars
- PostgreSQL
- writerow
- vervel
- pdfmathtranslate
- 키워드추출
- rdflib
- p-tuing
- cursorai
- Encoding
- psycopg
- python'
- TextRank
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |