두 개의 데이터 프레임 비교 및 차이점 식별
시나리오에는 구조와 행 인덱스가 동일한 두 개의 데이터 프레임 df1과 df2가 있습니다. 목표는 날짜와 과일 값을 비교하여 df2에는 있지만 df1에는 없는 행을 확인하는 것입니다.
직접 비교
df1 != df2 사용 방식 동일하게 레이블이 지정된 데이터 프레임이 필요하기 때문에 적합하지 않습니다. 날짜 인덱스를 제거해도 문제가 해결되지 않습니다.
연결 및 그룹화
차이점을 찾으려면 데이터 프레임을 단일 데이터 프레임 df로 연결할 수 있습니다.
<code class="python">import pandas as pd df = pd.concat([df1, df2]) df = df.reset_index(drop=True)</code>
모든 열을 기준으로 df를 그룹화하여 고유 레코드 식별:
<code class="python">df_gpby = df.groupby(list(df.columns))</code>
고유 레코드 필터링
다음으로 고유 레코드의 인덱스를 검색합니다. , 이는 그룹 크기가 1:
<code class="python">idx = [x[0] for x in df_gpby.groups.values() if len(x) == 1]</code>
마지막으로 이러한 인덱스를 사용하여 연결된 데이터 프레임을 필터링하여 df2에만 있는 행만 얻을 수 있습니다:
<code class="python">df.reindex(idx)</code>
이렇게 하면 원하는 차이점이 포함된 데이터프레임이 반환됩니다.
Date Fruit Num Color 9 2013-11-25 Orange 8.6 Orange 8 2013-11-25 Apple 22.1 Red
위 내용은 두 데이터프레임을 비교하고 특정 열을 기반으로 차이점을 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!