brunch

You can make anything
by writing

C.S.Lewis

by 유윤식 Jun 19. 2024

Polars #09

#List #Concat

이번엔 각 컬럼들을 모아서 list 로 만드는 방법!


저번 기록과 같은 Dummy 데이터를 가지고


%%time

import polars as pl


pl.Config(fmt_table_cell_list_len=10)


gt = 1_000_000

df = pl.DataFrame({

    'A': [i for i in range(gt)],

    'B': [str(i)+'_STR' for i in range(gt)],

    'C': [bool(i) for i in range(gt)],

    'D': [i * 10 for i in range(gt)]

})


df


A, B, C, D 컬럼을 이어 붙여서 하나의 List 를 새로운 컬럼으로 추가한다.


- concat_list



%%time


df = df.with_columns([

    pl.concat_list(['A','D']).alias('AD_list')

])


df



꼭 같은 타입과 concat_list 를 적용할 수 있는건 아닌데,



이러면 list 내부 타입이 str 로 변경된다.


이렇게 list 타입으로 만들고 나중에 list 관련 함수를 이용해서 다양한 데이터 조작을 할 수 있다.


**참고**

https://docs.pola.rs/api/python/stable/reference/expressions/list.html


간단하게 두개정도 예를 들어보면,

sort 함수를 쓸 수도 있고,


to_struct 함수를 사용해서 Dict 타입으로 변경 할 수도 있다.

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