작성
·
131
0
안녕하세요 4분 30초경 질문입니다
doc = pd.merge(doc1, doc2, how='outer', left_index=True, right_index=True)
를 사용하면 doc1과 doc2의 양쪽 인덱스를 기준으로 데이터프레임이 병합되는 걸로 이해했는데요
left_index=True만 사용해서 왼쪽 인덱스를 기준으로 병합할 수는 없나요?
doc = pd.merge(doc1, doc2, how='outer', left_index=True)를 사용하니 오류가 나고 GPT는 left_index=True)만 사용해도 병합이 가능하다고 하는데 실제로는 강의처럼 없는 날짜가 NAN이 될 줄 알았는데 오류가 발생해서 질문 드립니다
답변 1
0
안녕하세요. 답변 도우미입니다.
pd.merge
함수에서 left_index=True
만 사용하면 왼쪽 DataFrame의 인덱스를 병합 키로 사용하려고 하지만, 오른쪽 DataFrame의 병합 키를 지정해 주지 않았기 때문에 오류가 발생할 수 있습니다. 따라서,
ㄷleft_index=True
만 사용하면, 오른쪽 DataFrame에서 사용할 병합 키를 컬럼 이름이나 right_index=True
로 지정해주어야 합니다.
다음 부분도 한번 참고가 되시면 좋을 것 같습니다.
doc1과 doc2가 인덱스를 기준으로 병합되어야 한다면, 다음과 같이 사용할 수 있습니다.
doc = pd.merge(doc1, doc2, how='outer', left_index=True, right_index=True)
또는 특정 컬럼을 사용하려면, right_on
옵션을 사용할 수 있습니다
doc = pd.merge(doc1, doc2, how='outer', left_index=True, right_on='some_column')
이처럼 left_index=True
만 사용하면 오른쪽 DataFrame에 대한 병합 키를 지정해주어야 하므로 이전에 보신 정보와는 달리 오류가 발생한 것 같습니다.
감사합니다~