Pandas에서 두 DataFrame의 특정 열이 서로 동일한지 확인하려면 equals() 메서드를 사용하면 됩니다. 이 메서드는 두 Series 또는 DataFrame의 요소가 완전히 같은지 비교하여 불리언 값(True/False)을 반환합니다.
1. 첫 번째 DataFrame 생성
먼저 두 개의 열('Car', 'Units')을 가진 DataFrame1을 생성합니다.
dataFrame1 = pd.DataFrame(
{
"Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],
"Units": [100, 150, 110, 80, 110, 90]
}
)2. 두 번째 DataFrame 생성
같은 구조의 DataFrame2를 생성합니다.
dataFrame2 = pd.DataFrame(
{
"Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],
"Units": [100, 150, 110, 80, 110, 90]
}
)3. 특정 열('Units')의 동일 여부 확인
'Units' 열이 두 DataFrame에서 동일한지 비교하려면 다음과 같이 작성합니다.
dataFrame2['Units'].equals(dataFrame1['Units'])
전체 예제 코드
아래는 위 과정을 모두 포함한 전체 코드입니다.
import pandas as pd
# DataFrame1 생성
dataFrame1 = pd.DataFrame(
{
"Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],
"Units": [100, 150, 110, 80, 110, 90]
}
)
print("DataFrame1 ...\n", dataFrame1)
# DataFrame2 생성
dataFrame2 = pd.DataFrame(
{
"Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],
"Units": [100, 150, 110, 80, 110, 90]
}
)
print("\nDataFrame2 ...\n", dataFrame2)
# 두 DataFrame 객체 전체가 동일한지 확인
print("\nAre both the DataFrame objects equal? ", dataFrame1.equals(dataFrame2))
# 특정 열 'Units'가 동일한지 확인
print("\nAre both the DataFrames have similar Units column? ",
dataFrame2['Units'].equals(dataFrame1['Units']))실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
DataFrame1 ...
Car Units
0 BMW 100
1 Lexus 150
2 Audi 110
3 Mustang 80
4 Bentley 110
5 Jaguar 90
DataFrame2 ...
Car Units
0 BMW 100
1 Lexus 150
2 Audi 110
3 Mustang 80
4 Bentley 110
5 Jaguar 90
Are both the DataFrame objects equal? True
Are both the DataFrames have similar Units column? True참고 사항
equals() 메서드는 단순히 값만 비교하는 것이 아니라 인덱스와 데이터 타입까지 함께 비교합니다. 따라서 값이 같더라도 인덱스 순서나 dtype이 다르면 False를 반환할 수 있습니다. 반면 == 연산자는 요소별(element-wise) 비교를 수행하므로, 전체 열이 같은지 판단하려면 equals()를 사용하는 것이 적절합니다.