Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python – Pandas 데이터를 세트(Set)로 타입 캐스팅하는 방법

Pandas를 세트(Set)로 변환하기

파이썬에서 Pandas의 열(Series) 데이터를 세트(Set) 자료형으로 변환하려면 내장 함수 set()을 사용하면 됩니다. 세트는 중복된 값을 자동으로 제거해 주기 때문에, 고유한 값만 추출하거나 집합 연산(합집합·교집합·차집합)을 수행할 때 매우 유용합니다.

먼저 예제에 사용할 DataFrame을 생성해 보겠습니다.

import pandas as pd

# DataFrame 생성
dataFrame = pd.DataFrame(
   {
      "EmpName": ['John', 'Ted', 'Jacob', 'Scarlett', 'Ami', 'Ted', 'Scarlett'],
      "Zone": ['North', 'South', 'South', 'East', 'West', 'East', 'North']
   }
)

이제 각 열을 set()으로 변환한 뒤, 합집합 연산자 |(union)를 사용하여 두 세트를 하나로 합칠 수 있습니다.

set(dataFrame.EmpName) | set(dataFrame.Zone)

위 코드는 직원 이름(EmpName)과 지역(Zone) 두 열에 있는 모든 고유한 값을 중복 없이 하나의 세트로 반환합니다.

전체 예제 코드

다음은 위 과정을 정리한 완전한 실행 코드입니다.

import pandas as pd

# DataFrame 생성
dataFrame = pd.DataFrame(
   {
      "EmpName": ['John', 'Ted', 'Jacob', 'Scarlett', 'Ami', 'Ted', 'Scarlett'],
      "Zone": ['North', 'South', 'South', 'East', 'West', 'East', 'North']
   }
)

print("DataFrame ...\n", dataFrame)

# Pandas 열을 세트로 변환 후 합집합 계산
print("\nPandas를 세트로 타입 캐스팅...\n", set(dataFrame.EmpName) | set(dataFrame.Zone))

실행 결과

위 코드를 실행하면 다음과 같은 출력을 확인할 수 있습니다.

DataFrame ...
     EmpName    Zone
0       John   North
1        Ted   South
2      Jacob   South
3   Scarlett    East
4        Ami    West
5        Ted    East
6   Scarlett   North

Pandas를 세트로 타입 캐스팅...
{'Ami', 'East', 'North', 'West', 'Ted', 'South', 'Jacob', 'John', 'Scarlett'}

정리

set()을 활용하면 Pandas Series를 손쉽게 세트로 변환할 수 있으며, | 연산자로 합집합을 구할 수 있습니다. 이 방식은 데이터에서 중복을 제거하고 고유값 목록을 빠르게 얻고자 할 때 특히 효과적입니다. 참고로 교집합은 &, 차집합은 - 연산자를 사용하면 됩니다.