본문 바로가기
-------------코딩-------------/python 에러 모음

pd.concat() ValueError: Shape of passed values is

by 탶선 2020. 8. 4.
반응형

A와 B라는 Dataframe을 pd.concat()를 사용하여 합치려는데 

ValueError: Shape of passed values is (832123, 3), indices imply (554749, 3) 라는 에러 발생....

 

합치려는 두 개의 Dataframe의 행 수는 554749로 같은데 왜 832123이라는 에러가 발생했을까...

저는 종북, 좌빨 등 정치에 관심이 없습니다.... 데이터일뿐

 

A를 다시 살펴보니

554749 rows x 1 columns 인데 index는 277374밖에 없다..??

A라는 Df 생성시 Dataframe ㄱ, ㄴ 두 개를 합쳐 생성하였는데 

  • A = pd.concat([ㄱ , ㄴ])

이 때 index에 문제가 생긴것 같았다.

  • A = pd.concat([ㄱ , ㄴ].ignore_index=True) 로 A를 재생성
    • ignore_index=False,  # False: 기존 index 유지, True: 기존 index 무시



저는 진짜 혐오 발언에 관심이 없습니다.





A와 B를 합치는데 성공.... 별것도 아닌데 오래 생각한 에러..

 

pd.concat(objs,  # Series, DataFrame, Panel object

             axis=0,  # 0: 위+아래로 합치기, 1: 왼쪽+오른쪽으로 합치기

             join='outer', # 'outer': 합집합(union), 'inner': 교집합(intersection)

             join_axes=None, # axis=1 일 경우 특정 DataFrame의 index를 그대로 이용하려면 입력

             ignore_index=False,  # False: 기존 index 유지, True: 기존 index 무시
             keys=None, # 계층적 index 사용하려면 keys 튜플 입력

             levels=None,

             names=None, # index의 이름 부여하려면 names 튜플 입력

             verify_integrity=False, # True: index 중복 확인
             copy=True) # 복사
반응형

댓글