파이썬(Python)&판다스(Pandas)&Polars
[polars] read_csv, 특정 문자열을 None 처리, dtypes 설정
송채채
2023. 11. 17. 10:25
csv 파일을 읽어올 때, 특정 문자열을 None으로 바꾸기
df = pl.read_csv("data.csv", dtype=str, na_values=["", " "])
참고: stackoverflow
df = pl.read_csv("test.csv", infer_schema_length=0).with_columns(pl.all().cast(pl.Utf8, strict=False))
- 데이터프레임이 이미 생성된 경우, 특정 문자열을 None으로 바꾸기
df = df.with_columns(
pl.when(pl.col(pl.Utf8) == "")
.then(None)
.otherwise(pl.col(pl.Utf8)) # keep original value
.name.keep()
)
- 여러 문자열 중 하나라도 해당하면 None으로 변환 (is_in)
df = df.with_columns(
pl.when(pl.col(pl.Utf8).is_in(["", " ", "Nu"]))
.then(None)
.otherwise(pl.col(pl.Utf8)) # keep original value
.name.keep()
)
반응형