문제:
두 개의 Pandas 데이터를 결합하려고 할 때 DataFrame.join() 메서드를 사용하는 프레임을 사용하면 오류가 발생합니다: "열이 겹칩니다."
데이터 프레임:
시도된 코드:
<code class="python">restaurant_review_frame.join(other=restaurant_ids_dataframe, on='business_id', how='left')</code>
오류:
<code class="text">Exception: columns overlap: Index([business_id, stars, type], dtype=object)</code>
해결책:
오류를 해결하고 데이터 프레임을 결합하려면 Join() 대신 merge() 메서드:
<code class="python">import pandas as pd result = pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer')</code>
기본적으로 merge()는 두 데이터 프레임의 모든 행을 결합하는 외부 조인을 사용합니다. on 인수는 병합 작업을 수행하는 데 사용되는 열을 지정합니다.
겹치는 열에 대한 접미사:
두 데이터 프레임 모두 별이라는 열을 갖기 때문에 병합된 데이터 프레임은 두 개의 열(stars_x 및 star_y)이 포함됩니다. 이러한 접미사를 맞춤설정하려면 접미사 인수를 사용하세요.
<code class="python">result = pd.merge(..., suffixes=('_restaurant_id', '_restaurant_review'))</code>
이렇게 하면 병합된 데이터 프레임에서 별 열의 이름이 star_restaurant_id 및 star_restaurant_review로 변경됩니다.
위 내용은 Pandas DataFrame을 겹치는 열과 결합하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!