기본 콘텐츠로 건너뛰기

라벨이 Polars인 게시물 표시

[2023-04-04] Pandas 2.0 릴리즈 되었습니다.

[2023-04-04] Pandas 2.0 릴리즈 되었습니다.  안녕하세요. 클스 입니다. Pandas는 Python으로 데이터 분석을 위해 많이 사용하고, 생태계도 넓습니다. 지속적으로 업데이트가 이뤄지기도 합니다. 대용량 빠른 처리를 위해 Polars로 나왔지만 아직 생태계는 Pandas가 넓기 때문에 기본적으로는 Pandas를 알아야 합니다 plotly 같이 시각화를 하는 library도 pandas가 설치되어 있지 않으면 아예 설치가 안됩니다. 그리고 Polars도 to_pandas 와 같이 호환되는 함수를 제공합니다. 다만, 아쉬웠던 점은 대용량 처리, 메모리 그리고 속도였습니다. 이런 것을 해결하기 위해 Polars가 나왔습니다. 그러나 Pandas 가 놀지만 않죠... 2.0에 속도를 향상시키기 위해 PyArrow 가 들어왔습니다. 주의) Pandas 1.5.3이 삭제가 됩니다. 그래서 virtual env를 하나 생성해서 설치하는 것을 권장 드립니다.

주소로 고객 검색 서비스 구축하기(feat. Elastic Search v 8.6.2, MacOS) - 3.5탄 (feat. Polars)

주소로 고객 검색 서비스 구축하기(feat. Elastic Search v 8.6.2,  MacOS) - 3.5탄 (feat. Polars) 안녕하세요.  클스  입니다. Polars 란 Rust로 개발된 data frame 처리하는 라이브러리 입니다. pandas 보다 속도가 빠르다고 하네요~ Pandas로 현재는 1.5.3 버전이지만 2.0에서는 성능이 많이 개선되는 것 같습니다. 제가 사용하기에는 함수명이 Polars가 더 친숙합니다. 그래서 앞으로 업무에는 Polars를 많이 사용해보려고 합니다. polars : https://pola-rs.github.io/polars-book/user-guide/introduction.html https://towardsdatascience.com/pandas-vs-polars-a-syntax-and-speed-comparison-5aa54e27497e https://levelup.gitconnected.com/pandas-vs-polars-vs-pandas-2-0-fight-7398055372fb        걸리는 시간뿐아니라, 메모리 사용량, CPU 부하등도 같이 해줬네요~        https://pythonspeed.com/articles/polars-memory-pandas/ 다만, Polars는 아직 csv, excel 등을 읽을때, 한글 인코딩 처리라던지 몇가지 잘안되는 부분이 있는것 같습니다. 앞서 csv를 대량으로 elastic search에 업로드할 때 pandas로 개발했지만, 이번에는 Polars로 개발한 코드 입니다. ''' batch size 로 csv를 읽어서 elastic search에 insert 함 num_of_threads 는 CPU의 thread 갯수에서 절반 정도 해야 다른 작업도 합니다. ''' import polars as pl from elasticsearch ...