이번 글에서는 polars DataFrame에서 특정 컬럼을 제외하는 방법을 살펴보겠습니다. 데이터 코드에 사용된 예제 데이터는 아래와 같이 만들었습니다. import polars as pl # 예제 데이터 df = pl.DataFrame({ "A": [1, 2, 3], "B": [4, 5, 6], "C": [7, 8, 9]...
[polars] 결측값
이번 글에서는 polars DataFrame에서 결측값을 확인하는 방법을 살펴보겠습니다. 데이터 코드에 사용된 예제 데이터는 아래와 같이 만들었습니다. import polars as pl # 예제 데이터 df = pl.DataFrame({ "A": [1, 2, None, 4, 5], "B": [None, 2, 3, None, 5],...
[polars] datetime 기준 데이터 필터링
이번 글에서는 polars를 이용하여 특정 datetime 값을 기준으로 데이터를 필터링하는 다양한 방법을 살펴보겠습니다. 데이터 코드에 사용된 예제 데이터는 아래와 같이 만들었습니다. df는 id 컬럼에 대해 datetime 별 value 값이 있는 구조이며, reference_df는 각 id 별 reference_datetime이 기록되어 있습...
[python] list 타입 set theory - 합집합, 교집합 등
이번 글에서는 python list에 대해 합집합, 교집합 등 집합 연산에 대한 방법을 살펴보겠습니다. 기본 코드에 사용할 list는 아래와 같습니다. list1 = [1, 2, 3, 4, 5] list2 = [3, 4, 5, 6, 7] 합집합 (A ∪ B) set(list1) | set(list2) # {1, 2, 3, 4, 5, 6, 7}...
[python] contextlib - contextmanager
contextmanager는 Python의 contextlib 모듈에서 제공하는 데코레이터(@contextmanager)로, 컨텍스트 매니저(Context Manager)를 쉽게 구현할 수 있도록 도와주며, with 문을 사용할 수 있도록 만들어 주는 기능입니다. contextmanager 없이 컨텍스트 매니저를 직접 만들려면 __enter__와 _...
[Error] SchemaError: dtypes differ for column: Int64 != Float64
원인 해당 에러는 polars.read_parquet()로 데이터를 한번에 불러올 때, 특정 컬럼이 파일 별로 int와 float로 다르게 지정되어 타입이 맞지 않는다는 의미입니다. 저의 경우, 데이터를 split해 전처리를 한 뒤 저장한 parquet 파일들을 polars.read_parquet()로 한번에 불러올 때 발생했습니다. 전처리 단계에서...
[Error] ValueError: If using all scalar values, you must pass an index
원인 해당 에러는 pandas.DataFrame()을 생성할 때 모든 값이 스칼라(단일 값)인 경우, 명시적으로 인덱스를 지정해야 한다는 의미입니다. 저의 경우, 모든 값이 리스트나 배열이 아닌 스칼라 값인 딕셔너리를 데이터프레임으로 생성할 때 index를 지정하지 않아서 에러가 발생했습니다. 해결 방법 에러를 해결하기 위해 딕셔너리를 먼저 pan...
[DE] unzip을 통한 압축 해제
unzip 명령어를 통해 터미널로 zip 파일 압축을 해제 하는 방법에 대해서 알아 보겠습니다. 현재 디렉토리 내 모든 zip 파일 압축 해제 for file in *.zip; do unzip "$file"; done 특정 디렉토리 내 zip 파일 압축 해제 for file in /경로/디렉터리/*.zip; do unzip "$file" -d /...
[polars] encoding - utf8 & utf8-lossy
polars의 read_csv 등의 encoding 옵션 중 UTF-8 인코딩과 관련해 ‘utf8’, ‘utf8-lossy’, 2가지의 옵션이 있습니다. 둘의 차이에 대해서 알아 보겠습니다. encoding=”utf8” 일반적인 UTF-8 인코딩 방식입니다. 파일이 완전한 UTF-8 형식이어야 하며, 인코딩 오류가 발생하면 예외(Unicod...
[polars] filtering & json_normalize
polars는 고성능의 데이터 프레임 라이브러리로, 파이썬에서 사용할 수 있으며, 큰 데이터셋을 빠르고 효율적으로 처리할 수 있는 다양한 기능을 제공합니다. polars 라이브러리를 사용하여 특정 조건을 만족하는 데이터를 필터링하는 방법과 JSON 형태의 복잡한 데이터 구조를 정규화하는 방법을 소개합니다. sample 데이터 사용될 샘플 데이터는 아...