brunch

You can make anything
by writing

C.S.Lewis

by 유윤식 Aug 07. 2023

Polars #02

#selectors

빠르게 정리하면,


select 를 통해서 pola.rs 는 데이터를 선택 & 변형 할 수 있다.

특히, 불필요한 데이터는 제외하고 선택하는 표현 방법이 존재하는데

그 외에도 다양한 select 관련 표현방식이 있다.


이런 기본적인 내용들은 사실 Pola.rs 의 User Guide 에 잘 나와있다.

https://pola-rs.github.io/polars-book/user-guide/


내가 기록해 보고 싶은 내용은 selector 기능이다.

https://pola-rs.github.io/polars-book/user-guide/expressions/column_selections/#select-all-or-all-but-some

처음 Pola.rs 를 접할 때에는 잘 모르고 넘어갔던 부분인듯 한데,

이번에 다시 한 번 훑어보면서 유용한 점을 발견했다.


다양한 기능을 가지고 있지만, 나의 케이스에 필요하다고 느껴졌던 부분은 바로

Column 매칭 기능이다.


이미 알고있듯,

pl_df.select(pl.col('*'))

이런식으로 모든 컬럼을 가져올 수도 있고,


pl_df.select(pl.col('*').exclude(['mta_tax', 'total_amount']))

이런 표현을 통해서 제외하고자 하는 데이터를 명시할 수 있다.


이번에 패턴을 통해서 특정 컬럼 >> [ '_at' 이 포함된 ] 을 가져오려면

pl_df.select(cs.contains('_at'))

contains 라는 표현식을 사용할 수 있겠다.

기존에는 정규식(reg_exp)을 통해서 가능했다.


위에 명시한 문서에 따르면

import polars.selectors as cs

통해서 selector 기능을 사용하도록 권장하고 있다.

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari