분석시각화 대회 코드 공유 게시물은
내용 확인 후
좋아요(투표) 가능합니다.
토스 NEXT ML CHALLENGE : 광고 클릭 예측(CTR) 모델 개발
일반 컴퓨터(코랩 무료) 데이터 로드 및 분석 해결방법
안녕하세요
파이썬이랑 데이터 분석 배운 지 4개월밖에 안 된 초보 학습자입니다.
데이터 용량 때문에 일반 컴퓨터에서 데이터 로드부터 막히시는 분들이 주의에 많아서 제가 찾은 방법 공유해 봅니다.
틀린 내용이거나 엉터리일 수도 있으니 주의하세요!
저는 Pyarrow 라이브러리를 활용했습니다.
from google.colab import drive
drive.mount('/content/drive')
import pandas as pd
import pyarrow.parquet as pq
train_parquet_file = pq.ParquetFile("/content/drive/MyDrive/train.parquet")
test_parquet_file = pq.ParquetFile("/content/drive/MyDrive/test.parquet")
# 일부만 읽어서 랜덤 샘플링
df_train = next(train_parquet_file.iter_batches(batch_size=20000)).to_pandas()
df_test = next(test_parquet_file.iter_batches(batch_size=4000)).to_pandas()
df_train.pd.to_csv('sample_train.csv', index=False)
df_test.pd.to_csv('sample_test.csv', index=False)
# 샘플데이터로 전처리 및 분석 코드 작성
# 청크 단위로 읽고 머신러닝, 딥러닝 증분학습
chunk_size = 200000 # 원하는 청크 크기
for i, batch in enumerate(parquet_file.iter_batches(batch_size=chunk_size)):
df_chunk = batch.to_pandas()
print(f"청크 {i+1}: {df_chunk.shape}")
# 여기에 각 청크 (df_chunk)를 처리하는 코드를 추가합니다.
# 예: 데이터 전처리, 증분학습
polars도 좋은 라이브러리입니다. 메모리 관리도 훨씬 쉽고요
DACON Co.,Ltd | CEO Kookjin Kim | 699-81-01021
Mail-order-sales Registration Number: 2021-서울영등포-1704
Business Providing Employment Information Number: J1204020250004
#901, Eunhaeng-ro 3, Yeongdeungpo-gu, Seoul 07237
E-mail dacon@dacon.io |
Tel. 070-4102-0545
Copyright ⓒ DACON Inc. All rights reserved
코랩 Pro 정도만 사용하시면 구글 드라이브에 파일 넣고 코랩에서도 빠르게 학습 가능합니다!