분석시각화 대회 코드 공유 게시물은
내용 확인 후
좋아요(투표) 가능합니다.
서로 다른 두 개의 데이터프레임 병합 방법에 대해 질문드립니다
안녕하세요
서로 다른 두 개의 데이터 프레임 병합하려하는데 크기도 커서 병합이 어렵네요
tqdm 활용해서 처리속도 볼 수 있는 방법으로 병합하는 코드 작성에 대해서 도움 주시면 감사하겠습니다.
데이터프레임 설명
A와 B 데이터프레임을 고객이름 기준으로 합치고 싶습니다
다만 A데이터의 경우 시계열 데이터로 데이터가 존재하는 만큼
B데이터의 방문일자_월과 A데이터의 기준년월_월일 일치하는 조건으로
데이터를 병합하고 싶습니다
A데이터의 경우 약 4만 개 이상, B데이터도 만개 이상인 만큼
단순 merge나 조건문을 사용하면 엄청난 메모리와 시간이 소요되어 어려움을 겪고 있습니다.
for문을 활용하거나 다른 효율적인 방법으로 병합하는 것에 대해서 도움을 구합니다
아직 파이썬 초보인데 과제로 많은 양의 데이터를 처리해야 해서 모르는 것이 많습니다
코드 작성하는데 도움을 주신다면 정말 감사하겠습니다.
앗 죄송합니다
B데이터의 경우 약 50만개의 데이터 값이 존재합니다
40분 정도의 시간이 걸려서 보다 메모리를 효율적으로 사용할 수 있는 코드가 있는지 알아보고 싶었습니다
삭제된 댓글입니다
음.. 도움이 될지는 모르겠지만, csv파일 형식을 parquet 파일로 변환시켜 저장하시구 parquet를 불러와서 merge를 진행해보시겠어요? parquet는 '메모리에 효율적인 데이터 유형을 사용하여 용량을 크게 줄이고 빠른 작업이 가능'하다고 하니 시도해보시는게 좋을 것 같아요.
데이콘(주) | 대표 김국진 | 699-81-01021
통신판매업 신고번호: 제 2021-서울영등포-1704호
서울특별시 영등포구 은행로 3 익스콘벤처타워 901호
이메일 dacon@dacon.io | 전화번호: 070-4102-0545
Copyright ⓒ DACON Inc. All rights reserved
데이터가 4만개 1만개 대략 5만개면.. 데이터가 많아보이진 않아보입니다만... 얼만큼의 시간이 걸리고 메모리가 드시나요..?
지금 데이콘에서 진행중인 [제주도 교통량] 대회에 참여하여 비슷한 상황을 겪었는데, 대회의 데이터는 4'백'만개 데이터 x 약 1만개 데이터 merge하는데 30분 이하로 걸렸거든요..?
혹 merge를 inner로 하신게 아닌 outer로 하신게 아닌가요..?