>백엔드 개발 >파이썬 튜토리얼 >Pandas의 'isin' 함수를 사용하여 SQL의 'IN' 및 'NOT IN' 연산자를 모방하려면 어떻게 해야 합니까?

Pandas의 'isin' 함수를 사용하여 SQL의 'IN' 및 'NOT IN' 연산자를 모방하려면 어떻게 해야 합니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-21 22:25:22166검색

How Can I Use Pandas' `isin` Function to Mimic SQL's `IN` and `NOT IN` Operators?

SQL의 IN 및 NOT IN 기능을 사용하여 Pandas DataFrame을 쿼리합니다.

Pandas DataFrames에서 데이터를 필터링하는 것은 데이터 처리에서 일반적인 작업입니다. Pandas는 직관적인 isin 함수를 포함하여 이를 달성하기 위한 다양한 방법을 제공합니다. 이 문서에서는 isin을 활용하여 SQL의 IN 및 NOT IN 연산자를 모방하여 데이터를 필터링하는 방법을 보여줍니다.

문제 이해

SQL의 IN 및 NOT IN 연산자를 사용하면 다음을 수행할 수 있습니다. 값이 지정된 목록에 포함되어 있는지 아니면 제외되는지를 기준으로 데이터를 필터링합니다. 이 기능은 특정 레코드를 분리하거나 원치 않는 데이터를 제거하는 데 필수적입니다.

isin을 사용하여 데이터 필터링

Pandas는 Series 개체에서 작동하는 isin 함수를 제공합니다. 시리즈의 각 요소가 제공된 목록이나 배열의 값과 일치하는지 여부를 나타내는 부울 마스크를 반환합니다.

IN 필터링

IN 작업을 수행하려면 간단히 전달합니다. 다음 구문을 사용하여 isin 함수와 일치시키려는 값 목록:

something.isin(somewhere)

NOT IN 필터링

NOT IN 연산을 수행하려면 isin 함수 앞에 부정 연산자 ~를 사용하세요.

~something.isin(somewhere)

작동한 예

다음 DataFrame df와 보관할 국가 목록을 고려하세요. country_to_keep:

df = pd.DataFrame({'country': ['US', 'UK', 'Germany', 'China']})
countries_to_keep = ['UK', 'China']

country_to_keep에 국가가 포함된 행을 찾으려면:

df[df.country.isin(countries_to_keep)]

출력:

    country
1        UK
3     China

국가가 포함되지 않은 행을 찾으려면 에 포함됨 국가_to_keep:

df[~df.country.isin(countries_to_keep)]

출력:

    country
0        US
2   Germany

isin 사용의 이점

  • 간결성: isin 함수는 IN 및 NOT IN을 수행하는 간결한 방법을 제공합니다. 필터링하여 복잡한 코드의 필요성을 줄입니다.
  • 유연성: isin은 문자열, 정수, 객체를 포함한 모든 유형의 시리즈와 함께 사용할 수 있습니다.
  • 효율성: isin은 최적화된 알고리즘을 활용하여 필터링을 수행하므로 대규모 환경에서도 효율적입니다.

isin 함수를 이해하고 활용하면 지정된 목록 또는 배열의 값을 기반으로 Pandas DataFrames를 효과적으로 필터링할 수 있으며 SQL의 IN 및 NOT IN 기능으로 데이터 처리 작업을 강화할 수 있습니다. 연산자입니다.

위 내용은 Pandas의 'isin' 함수를 사용하여 SQL의 'IN' 및 'NOT IN' 연산자를 모방하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.