Pandas DataFrame 비교 메서드

Beginner

소개

이 랩에서는 pandas 라이브러리의 compare() 메서드를 사용하여 두 개의 DataFrame 을 비교하고 차이점을 식별하는 방법을 배우게 됩니다. compare() 메서드는 두 DataFrame 간의 불일치를 찾아 나란히 비교하여 차이점을 보여주는 편리한 방법입니다.

VM 팁

VM 시작이 완료되면 왼쪽 상단을 클릭하여 Notebook 탭으로 전환하여 실습을 위해 Jupyter Notebook에 액세스하십시오.

때로는 Jupyter Notebook 이 로딩을 완료하는 데 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한 사항으로 인해 작업의 유효성 검사는 자동화할 수 없습니다.

학습 중 문제가 발생하면 언제든지 Labby 에게 문의하십시오. 세션 후 피드백을 제공해주시면 문제를 신속하게 해결해 드리겠습니다.

필요한 라이브러리 가져오기

먼저, compare() 메서드를 사용하기 위해 pandas 라이브러리를 가져와야 합니다. 다음 코드를 실행하십시오:

import pandas as pd

DataFrame 생성하기

다음으로, 비교할 두 개의 DataFrame 을 생성합니다. 각 DataFrame 은 동일한 레이블을 가져야 하지만 다른 값을 가질 수 있습니다. 다음 코드를 실행하여 DataFrame 을 생성하십시오:

df1 = pd.DataFrame([['Abhishek',100,'Science',90], ['Anurag',101,'Science',85]], columns=['Name', 'Roll No', 'Subject', 'Marks'])
df2 = pd.DataFrame([['Abhishek',100,'Maths',95], ['Anurag',101,'Maths',80]], columns=['Name', 'Roll No', 'Subject', 'Marks'])

DataFrame 비교하기

이제 compare() 메서드를 사용하여 두 DataFrame 을 비교하고 차이점을 표시할 수 있습니다. 이 메서드는 두 DataFrame 간의 값을 비교하고, 서로 다른 값을 나란히 표시하는 새로운 DataFrame 을 반환합니다. 다음 코드를 실행하십시오:

differences = df1.compare(df2)
print(differences)

DataFrame 수정 후 다시 비교

두 DataFrame 중 하나의 값을 수정하고 다시 비교하여 업데이트된 차이점을 확인할 수 있습니다. 두 번째 DataFrame 의 값을 수정하려면 다음 코드를 실행하십시오:

df2.at[1, 'Marks'] = 85

그런 다음, 3 단계의 비교 코드를 다시 실행하여 업데이트된 차이점을 확인하십시오.

정렬 축 및 동일 값 포함 설정

결과 DataFrame 에서 정렬 축 (alignment axis) 과 동일 값의 포함 여부를 지정할 수도 있습니다. 기본적으로 정렬 축은 1 (열) 로 설정되고 동일한 값은 포함되지 않습니다. 이러한 옵션을 시연하려면 다음 코드를 실행하십시오:

differences_axis_0 = df1.compare(df2, align_axis=0)
differences_keep_equal = df1.compare(df2, keep_equal=True)

요약

이 랩에서는 pandas 라이브러리의 compare() 메서드를 사용하여 두 DataFrame 을 비교하는 방법을 배웠습니다. 이 메서드를 사용하면 서로 다른 값을 나란히 표시하여 DataFrame 간의 차이점을 식별할 수 있습니다. 또한 결과 DataFrame 에서 정렬 축 (alignment axis) 과 동일 값의 포함 여부를 지정하는 방법도 배웠습니다. 이제 이 지식을 사용하여 데이터 세트 간의 차이점을 쉽게 비교하고 분석할 수 있습니다.