Pandas: 서로 다른 두 dataframe의 열을 비교하는 방법


다음 방법을 사용하여 서로 다른 두 Panda DataFrame의 열을 비교할 수 있습니다.

방법 1: 열 간 일치하는 값 계산

 df1[' my_column ']. isin (df2[' my_column ']). value_counts ()

방법 2: 열 간에 일치하는 값 표시

 p.d. merge (df1, df2, on=[' my_column '], how=' inner ')

다음 예에서는 다음 Pandas DataFrame과 함께 각 메서드를 사용하는 방법을 보여줍니다.

 import numpy as np
import pandas as pd

#create first DataFrame
df1 = pd. DataFrame ({' team ': ['Mavs', 'Rockets', 'Spurs', 'Heat', 'Nets'],
                    ' points ': [22, 30, 15, 17, 14]})

#view DataFrame
print (df1)

      team points
0 Mavs 22
1 Rockets 30
2 Spurs 15
3 Heat 17
4 Nets 14

#create second DataFrame
df2 = pd. DataFrame ({' team ': ['Mavs', 'Thunder', 'Spurs', 'Nets', 'Cavs'],
                    ' points ': [25, 40, 31, 32, 22]})

#view DataFrame
print (df2)

      team points
0 Mavs 25
1 Thunder 40
2 Spurs 31
3 Nets 32
4 Cavs 22

예시 1: 열 간 일치하는 값 계산

다음 코드는 각 DataFrame의 열 간에 일치하는 값의 수를 계산하는 방법을 보여줍니다.

 #count matching values in team columns
df1[' team ']. isin (df2[' team ']). value_counts ()

True 3
False 2
Name: team, dtype: int64

두 DataFrame에는 공통된 팀 이름 3개와 서로 다른 팀 이름 2개가 있음을 알 수 있습니다.

예시 2: 열 간 일치하는 값 표시

다음 코드는 각 DataFrame의 열 사이에 실제 일치하는 값을 표시하는 방법을 보여줍니다.

 #display matching values between team columns
p.d. merge (df1, df2, on=[' team '], how=' inner ')

	team points_x points_y
0 Mavs 22 25
1 Spurs 15 31
2 Nets 14 32

결과에서 두 DataFrame의 열에 다음과 같은 공통 값이 있음을 알 수 있습니다.

  • Mavs
  • 스퍼스
  • 네트

관련 항목: Pandas에서 내부 조인을 수행하는 방법(예제 포함)

추가 리소스

다음 튜토리얼에서는 Pandas에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

Pandas에서 열 이름을 바꾸는 방법
Pandas DataFrame에 열을 추가하는 방법
Pandas DataFrame에서 열 순서를 변경하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다